Ask HN: anyone ever drop everything and leave software dev behind?

102 points by brosephius ↗ HN
I know most everyone that hangs out here sees themselves as hackers/coders/etc, but anyone ever leave the software world to do something unrelated? I've been programming professionally for 5 years now, and am at a point where I can't really take it anymore.

The problem?

* Golden handcuffs - I'm leaving a lot of unvested money on the table if I leave, and realistically speaking if I leave this job I won't get anything that pays nearly as well for years

* Lack of "support group" - sure I could up and move to <random country>, but I don't really have much of a social circle so I'm a bit daunted by the prospect of being even more alone

* Still want to code - I don't hate software, but my job has made me realize that I'm really just a mediocre programmer with really good domain knowledge

* Aspirations - if I leave the corporate coding world, all of the other things I really want to do aren't exactly less stressful - move to LA and become a filmmaker, move to SF and join a startup, etc.

On the plus side, I can afford to be unemployed for at least a year, so I'm seriously considering just quitting outright to figure things out (with the caveat mentioned above that once I leave, coming back to this job/pay level is not going to happen). Anyone have similar thoughts/experiences/stories?

108 comments

[ 0.25 ms ] story [ 213 ms ] thread
Still want to code - I don't hate software, but my job has made me realize that I'm really just a mediocre programmer with really good domain knowledge

This makes me wonder if it is not programming that is the problem but the environment and processes at your work place.

My suggestion: keep your job and work hard to become a better programmer in your spare time. Pick a side project that interests you. When the golden handcuffs come off, get the money, and move to SF to join or start a startup. You'll have more funds and be a better developer because of it.
This seems like the wrong place to be asking that. It's like asking who has left the medical business in the doctor's lounge.
I know, but I figured the odds were good someone around here used to be a professional programmer, and is now doing something completely different, but still a hobbyist and HN enthusiast. I could be wrong.
Existence proof: me.
I do not think so it's a wrong question here. Many a programmer feel this way at one point in time or other .
What about it can you "not take anymore"?

If the money's good and you're miserable anyway,the money isn't doing what it promised. Move to SF and join a startup sounds like a good way to inject some excitement. But that goes back to my original question.

http://stackoverflow.com/questions/129508/when-did-you-know-...

see the top-rated answer. on top of that, I'm basically not fulfilling my dreams, and I'm sort of preemptively feeling intense regret about my life. but I'm also preemptively regretting making that drastic change and having it ultimately fail me also. I guess I desperately want change, but perversely also deeply fear change.

I did the reverse-- I went from majoring in English and teaching high school to embedded systems engineering.

It took a few things-- some aptitude for the field, a lot of determination, some money for a master's degree (over the course of 3 years), and a friend taking a chance on me with a summer internship. After about a year, it was pretty clear that it was going to work. I think I could make a similar switch again if I had the motivation.

It seems the major difference in your case is that you're not sure what you'd rather do, while I had a strong desire for engineering. I would try to figure out where you're headed before you start on the journey.

That's a pretty major change. Did you have any knowledge of embedded systems beforehand? Why did you switch? Why not go engineering the first time around?
I can answer that last question... there were not many girls in engineering. There were a few (and they were cute and I worked with some getting their Masters) but the Arts and soft sciences were loaded with girls. That's why I got a BA rather than a BS. I still learned how to code, sat on engineering committees, participated in defenses, did Military funded research on embedded devices, etc., but I had fun with the opposite sex too. You need some balance in life.
I had approximately no knowledge of embedded systems beforehand. I did well in math in high school and I played around with an Apple II and BASIC as a kid. (Initially, I was just aiming at "engineering" as a broad field; it wasn't until I got further into it that I focused on embedded stuff. My degree was in mechanical engineering, but I took mostly EE classes.)

I switched because I discovered that I love designing and building things. I still love teaching, and I wouldn't be surprised if I did it again.

Why didn't I study engineering the first time? That's a damn good question. The English degree did give me the ability to write reasonably well, but other than that, it was crap.

Mostly, it was just bad luck that I didn't end up in a technical field initially. I went to a liberal arts college and took soul-crushing, thinking-free chemistry and biology classes as a freshman-- that pretty much killed science for me. It should have been obvious, but even as late as my junior year in college, I didn't know that the field of electrical engineering existed. It's kind of a sad story, looking back on it, but at least it ended well.

I did:

http://www.publicstatic.net/2009/01/sure-change-jobs/

The biggest adjustment for me was money. I'd gotten so used to buying whatever I wanted (not large things) that I had some money trouble early on.

But I'm back to programming now. I love it.

interesting story, thanks for sharing it.
It's a great story, inspiring even, why don't you do an HN post ?
Thanks! But it's an old post. :-)

I should probably clean it up, too. Some of the formatting got butchered in a server move.

First of all you mentioned two "unrelated" examples - one of which sounds like exactly the same thing in a different environment. Being a film maker is not a job either - I assume its like most creative industries and that 90% of the people who do it don't actually make a living wage. That's not to say don't do it but do think about what you are up to.

All of this suggests that its the moving on and not where you are moving too you are focused on.

Secondly - you don't sound like you have any dependants or responsibilities. So - best time in your life ever to make a move. (plus you can live for a year without income! Luxury!)

Thirdly there is never a best time to do anything. If you wait for all the conditions to be right you will still be working at the same job when you are 60 still hating every minute.

and lastly in general you get to pick one of a) safe or b) interesting in a job - it is very rare to get both immediately.

You are young and free - and if you can't pick (b) now you never will be able to. If you pick (b) now you can always go for (a) later or you will find a niche where your type (b) job acquires some safety

and ps. Corporate programming is totally rubbish for the most part in my experience and your feelings about the job are not the same as your feelings about software development.

I was thinking of doing exactly this years ago. I sold my Infiniti, bought a used station wagon that cost half as much, and was going to put my self through massage school in Ohio with the proceeds.

A consulting job came up in Houston, and I've been "distracted" from this goal ever since.

I am again unemployed, and I too have about a year's worth of float time. The corporate world is pretty egregious at times. Human social dominance mechanisms are necessary for regulating large organizations, but they shouldn't be the primary focus of one's corporate existence. Unfortunately, they are just that for most organizations.

I'm really just a mediocre programmer with really good domain knowledge

Your problem is that you have no problem. Let me explain...

I believe that the "quality" of a programmer is not how much you know, but what you can do with it. So it you have "really good domain knowledge", then you probably aren't a mediocre programmer at all, you're probably a good programmer or even better.

Like many other hn'ers, I love to come here are check out the latest cool stuff people are doing. Then I hear the 2 voices in my head. One says, "That is so cool - I have to learn that!" The other says, "Big deal, I could do that in BASIC. I may need a few more lines of codes and a couple of hacks, but it will still do the exact same thing."

It's tricky to balance all the cool stuff going on with your ability to just get stuff done. You will never learn everything. You will never become the expert at more than one or two things. It's great to learn, but not at the expense of doing. You need both. There were many times I had to build something with my limited knowledge and wished I knew more. But then I built it anyway. Something built with limited resources today is better than something built perfectly tomorrow.

If you're unhappy with your job but like coding, then either find another job or start something on the side. But please don't fall into the trap that you aren't good enough because someone else knows something more. That will always be the case. You can't win that battle.

Just do the best with what you have and make a practice of adding to it a little at a time. Get satisfaction from the benefits you provide others with what you know now.

It's tricky to balance all the cool stuff going on with your ability to just get stuff done. You will never learn everything. You will never become the expert at more than one or two things. It's great to learn, but not at the expense of doing

This is a quote so good that can be applied to almost all fields of knowledge and life in general.

great advice (as usual), edw519 ... have you thought about starting a blog with an FAQ mined from your responses from "Ask HN" questions? an easy hack that someone else could even do would be to troll through "Ask HN" threads, extract the ones where your answer was highest-ranked, and slap them together on a webpage somewhere. then that could be manually filtered and curated. i think that this would be a helpful page for young programmers just getting started with their careers
Thanks for the kind words, pgbovine.

Yes I have thought about starting a blog for some time, but I was always afraid it would take time away from my programming.

Oh, what the heck...

http://edw519.posterous.com/

I have updated my hn profile.

Now I have a weekend project.

I wouldn't limit it to young programmers.
I absolutely agree. I was destroying myself over not meeting my own expectations as a developer. I've always had other interests but refused them. My thinking was that my discipline would pay off as I became a better programmer and applied more time to practicing.

Then, along came a great deal on a decent boat. $250 for motor, hull, interior, outdrive, and trailer. While it did have all of the components, it did require quite a bit of work. I also didn't know a thing about boats when I purchased it.

It's been 4 months that I've been working on it. I haven't kicked myself in the ass once for giving up the programming time I would had been able to apply to my skills otherwise. And I'm much more comfortable working in such a frustrating environment now that I don't rely so heavily on satisfaction from programming.

Two bonuses that also came from my purchase: - I know a bunch about boats - I'll be able to truly appreciate the free time that my job affords me when I launch for the first time tomorrow (assuming all of the kinks are worked out).

Like many other hn'ers, I love to come here are check out the latest cool stuff people are doing. Then I hear the 2 voices in my head. One says, "That is so cool - I have to learn that!" The other says, "Big deal, I could do that in BASIC. I may need a few more lines of codes and a couple of hacks, but it will still do the exact same thing."

It's also easy to get discouraged while reading about all of these amazing projects. The internet makes its easy to aggregate all of the top-tier projects and sometimes it feels like you can't compete with these guys. Don't forget that a lot of these people have focused months and years on a single project.

I have a tendency to get caught up in the amazement. I saw a post on a Reddit yesterday about a guy who built and amazing boat dock at his house. Now I want to build a dock and I don't even live on the lake!

I don't hate software, but my job has made me realize that I'm really just a mediocre programmer with really good domain knowledge

You seem like a prime candidate for promotion to management or a more analytical role. Is this a possibility or something you can work toward?

The irony of Peter Cooper advocating the Peter Principle is not lost on me.
Funny, but not as funny as if it were true. PP is when you're competent and get promoted to something you suck at; Peter's suggestion is the other way around. Sorry to nitpick.
But isn't it true?

If someone is succeeding as a programmer, that says nothing about how they'll do as a manager. Therefore pushing for that promotion is a good way to wind up getting promoted to something you such at. Which is the Peter Principle at work.

But the OP's contention is that he isn't a very good programmer, while some of the qualities he says he has sound like they'd be good for somebody in an oversight role.
Are we failing on ambiguity here? If by "it" you mean "the peter principle", then yes I think it's very true.

But here, by assumption, the programmer is not competent (I doubt this is so, but that was the context) and petercooper's suggestion -- a good one -- was to consider getting promoted into a perhaps more suitable position. That's the inverse of PP.

Here on reddit : http://www.reddit.com/r/IAmA/comments/c1rcu/iama_person_with...

An ex Googler says he moved from CS to the lumbering industry ! Hope this helps.

On some days, when the nonsense of corporate drama (just like WoW, i swear) crops up. I think: Ok, ok, lets just become a janitor/garbage man so the shit that I have to deal with is up front; then spend my evenings working on OSS.
Not seriously. I like coding. But when I don't get to do it . . . I go a little nuts and have had thoughts about just getting out. This is usually related to poor working environment fit for my personality and personal goals. I think it is common, particular for corporate devs, to struggle with these types of feelings.

I have, by accident and plan (lack of knowing the effects), wound up in a similar place to what you describe. More directly, I have developed a marketable, but big corporate-focused skill set (RDBMS, Oracle, MS SQL Server, DB2 . . . ).

This is OK for now, it works for my geographic region, my family, and so far has been low-risk from the "I have a well paying job" perspective, but is completely unsatisfying career-wise from a challenging growth perspective. I've recently turned down one much higher-paying job than I have now and am struggling with a similar decision at this point for another job. My main fear is that the new offer represents "more of the same" and this website, PG's essays, and a number of other sources have poisoned me forever against living in my safe corporate cube in happiness.

Not that this will help how you feel much, but having really good domain knowledge probably has the effect of making you much more valuable than just a "mediocre programmer." Think about those guys that got YC funding, they were teaching themselves to program to implement their idea (can't remember the group, Jessica mentioned them in a Mixergy interview). It's not like they were super-hackers at that point or anything.

If I had your flexibility to quit and move, I'd try to hook up with one of the startups that float around this forum. I read a number of comments that make me think many of them are small with smart people who want hackers looking to push themselves hard and build stuff in a fun way. Could be fun, sounds like you don't need to make much in the way of money, maybe you can just sleep on the floor at the apt office.

I did, I got so burnt out (see other posts in my profile) that I left. I started a Hardwood flooring business. It was the only way to keep my earnings close to where I was at, at the time. While I loved doing the work, it was a disaster. I had people that would not show up for work, customers that did not like the look of certain boards. Anyway, I came to see that I just traded problem sets and quickly went back to development. Some people get out and are real happy with doing so, for me I took drastic measures for a problem that was simple to resolve. Unfortunatly, it took reflecting back for me to see it.
I left programming in 2004-2005 to work at a skateboard company. I filmed and edited videos and went skateboarding for a year. It was great. I also only made $8000 the entire year, most of it from fixing the company's web site, so I returned to programming.
Did you have trouble returning? Was it hard finding jobs, getting interviews? Did you have to take a pay cut when you returned?
Did you have trouble returning?

No.

Was it hard finding jobs, getting interviews?

No.

Did you have to take a pay cut when you returned?

No.

what kind of programming did you do?
a bit of everything
:\ really no focus? even something general like, "web development" (as opposed to "game development", "financial software").

i'm curious because i wonder what fields it's easy to find work in again after a year off.

At the time it was python, databases, C, unix and java. A mixture of sys admin and development for online medical records. Part of the reason I left was because I found that I could not cope with how boring my job was. I do not compartmentalize very well. When I returned, I worked for a place that made a music player.
cool. how did you find/end up at the "music player" company?
I worked with some of the same guys earlier in my career. However, it really was simple serendipity - they happened to be working down the street from where I was living and I ran into them.
I was in your shoes 3 years ago. I thought I would leave software dev entirely if I ever left the company I was working for. Turns out I only hated the company I worked for and loved software dev - went out on my own contracting for several years then recently signed with a fantastic company.
I'm going to make an analogy to love. In the beginning, you're attracted to someone mostly because of looks. Then you get to know all the good things (s)he has shared with you. Eventually, the passion flame wanes and you're now able to see her/his ticks and vices. The flaws.

Getting into software development is similar. At first you get excited by your first "hello world", then you find all sorts of cool things that can be done with code. Eventually the passion flame wanes, you discover maintenance, management. The boring stuff.

First, realize that pretty much everything you get into will follow this pattern because everything has good and bad sides. Then ask yourself: are the bad things in filmmaking/SF start-ups more tolerable than the bad things in your current situation? Are the good things in filmmaking/SF startu-ups more enjoyable/rewarding than the good things you currently enjoy?

As far as happiness goes, maximize the amount of time you spend thinking about the good parts of what you have. Write code for a hobby project, use your money to indulge every once in a while. Dream about things you want to do.

Or just take the leap and do them. Then, you'll just have different good things to focus on.

Good point. I think this is why sometimes change is good just for the sake of change.
Your comment made me think in a different direction.

I had originally gotten in programming, as you said because of the excitement of hacking, "hello world"; it was an intrinsic joy that I had that I derived although extrinsic rewards (striking it rich) was in the back of my head. But it wasn't the extrinsic demands that was driving me day-to-day, otherwise I would have gone into accounting instead of programming.

But it was all of these extrinsic demands that pushed me to climb the corporate ladder, deal with maintenance & management etc. In so doing, I was telling myself that I had to plough through these minutiae to get to my big external validation of climbing the ladder, becoming rich, etc - when in fact, it was my intrinsic motivation that got me to where I was from the get-go. And if getting to the and staying at the top means sacrificing the internal joy for external validations, then it's not worth it.

I used to think that dropping your obligations to the ladder is counterproductive to your career. But not anymore when I spend more rationalizing and calming myself down from all of the angst of writing TPS reports and posturing/covering my ass during meetings. I don't even have anymore energy/time to actually write code. And that's pretty damn counter-productive.

I always have taken a broad definition of hacking and I see this pattern everywhere. You could see playing guitar as having fun creating music & expressing yourself, or memorizing sets & rehearse & network to get your band signed to a huge label. You could see making friends and picking up women as having fun meeting people & expressing yourself, or memorizing sets & rehearse & network to up your social worth, etc.

Listen to the interview with Tobi from Shopify on Mixergy.com
I knew a guy at Microsoft who got sick of his dev job and moved to Las Vegas to be a police officer. From what I hear, he's having a ton of fun, but I'm not sure it's less stressful. :)
I've been in the same job for nine years now. Great people, great company, an excellent salary, but it's just gotten old. The work has become repetitive and the big problems have been solved.

So I'm leaving to take a bit of time off and hack on projects of my own. I don't intend to leave programming but I might try and find a new problem domain to work in.

I had an epiphany about this last month: you can't compartmentalize your life. It doesn't work to build your life around a job that bores you - work is too fundamental.

I'm in a similar situation - great salary, great people, not so enthused about the company or the work any more. I'm starting to seriously consider taking a sabbatical of some kind too, good luck with yours!

I know a lot of people who can be very happy without caring too much about their job, but that's not the case for me (or you, by the sounds of it).

I remember after the first tech bubble burst back around 2001 a lot of (young / male) disillusioned devs abondended the internets to become bike messengers (although they returned to blog about it naturally). It was an awesome read - if anyone remembers that and has some links please share. Some points I still remember:

- A lot less money (as mentioned here by a few).

- A lot less coffee. Being really tired at the end of the day (but the good tired after having felt as though they really worked). No more trouble sleeping. Keeping normal hours.

- Harder. Faster. Stronger. It is hard work, but it makes you hard.

- Few regrets (that I recall).

It was a little Fight Club-y. And I don't think anyone looks to retire as a bike messenger (probably get taken out by a taxi before then). But I'd be curious to know how long the experiment lasted.

You are having the same problem as mine, except for me I can't stand out to live for a year alone ;)

Your problem is: You are bored from your current job. You have been working for 5 years and it had become a monotonous job. You like coding but you hate your work as a coder.

The solution that I found is: Build something -> Your own -> Not only coding is involved -> unleash the sens of adventure

Take for example a SaaS service. You have to do the design, coding, deal with databases, setup the servers and then test and launch the product. Next is marketing, customer support, may be you'll try Google Adsense in the way, start a blog to enlarge your audience, do some open source work to attract related audiences, travel to x to promote your y to z....

You see? a SaaS (or uISV or any other crap really) will make your salary and also your journey. Start in the side and launch in your vacation, support it in the side until it supports you like your job does and leave. Don't spend your savings as they can be helpful in though times.

You'll get motivation every time you sit at your day to day job desk and feel really bored about it. This boredom (for me) will up lift your working power gauge in the night.

Don't burn yourself, work for 1-2 hours per week-day and 10 hours week-end. You can raise the number of hours, just make sure you enjoy your work. Make light schedules and plans in a way your web/desktop development becomes like an adventure journey. If you are bored read other unrelated-coding/related-project stuff (think marketing, SEO, scaling, culture...)

I'm not sure if this is the correct answer, if so, let just your journey begin!

Hope someday we meet in Dream Land, once each of us achieved his dreams.

Problem with typical employee agreements.

Build something -> Your own

is

Build something -> Company owns

1. What do you want to do most, what are you passionate about?

2. Do that thing, no matter what.

To second this, my martial arts instructor used to be a developer, and quit to start doing physical therapy. He loves it and is 100% glad that he changed.

So, just do what you're passionate about, and it will work out. Nothing beats doing what you love 8 hours per day.

Any leap into the unknown is very hard, but whatever you do, don't procrastinate on it, the older you get the harder it gets - don't look back in 10 years and wish you'd made the move. Whilst I firmly believe if you really want to do something you can do it at any time, it definitely gets harder as you get older.

Try telling your wife and kids you are going to leave programming and the money you make and start again on something else, it's possible yes, but generally not so easy. Your "support group" of friends is much harder to leave the longer you have had them around. And "aspirations" are generally slightly harder to fulfil as you get older (trainee hairdresser at 25 OK, at 50 it seems a bit weird).

Also don't assume that if you leave you wont be able to step back into it. There is always a demand for good people and unless you are in an extremely limited market you quite possibly will be able to step straight back into where you are.

My wife and I (late 30's) are about to pack up our family and move countries and I'm contemplating what I want to do when I get there so I'm kind of going through the same thing.

Hey, email me (email is in my profile) ... I've experienced the same kind of thing and have a few of the same ambitions and came up with a solution, perhaps it could work for you too.
My story is quite similar to yours. I was a software developer for several years. It was intensely disillusioning and after thinking the same thoughts as you, I quit. I've been unemployed for the last year and a half, trying to "figure things out."

It doesn't feel like my sabbatical has been a huge success. But in the future, I might look back and realize it was essential. It's been relaxing, and I've done a lot of reading I wanted to do, but my reading list is still infinitely long (one book references another, ad infinitum). I haven't figured out what my life's work will be, and I feel a bit foolish for ever thinking I would.

You can take this as a kind of warning: a sabbatical may be the best option available to you now, and it may be exactly what you need, but don't expect it to be magical.