I've been programming for over 2 decades and had 2 bouts of burnout. The first was around the dotcom bust, when I thought my career was over because all the jobs were going to go overseas, and the second after a too-long stint at a shitty well-known enterprise software company where I felt useless and worthless.<p>I didn't take a break during the first one, which took a toll and probably had a hand in my subsequent divorce. The second time, I stuck around as long as I could until I got health issues, so I quit for a year. That was the best thing I've ever done and I wonder if I'll ever get a chance like that again. I spent probably $50k in cash and lost out on $100k net income after taxes, so delta in money was large, but worth it for my sanity and overall career. It helps having a supportive spouse with a great job/health care and good savings.<p>During my break, I programmed for 8 hrs a day 5 days a week, except on things that I loved, and it was worth it. I did things like spend 3 solid weeks improving the accuracy of my OCR system using OpenCV/Tesseract from 90% to 98%, something I never could have done without all the freedom or time. I regained my love for programming as well as my self-esteem, and so far so good. Hopefully I can ride this current wave out until I retire, but if it happens again, I have enough fuck you money saved to take more than a few months off.
I'm not saying this to try and discredit this post. However, there's a very interesting trilogy here:<p>Oct 2012: Yes I Still Want To Be Doing This At 56 <a href="http://thecodist.com/article/yes_i_still_want_to_be_doing_this_at_56" rel="nofollow">http://thecodist.com/article/yes_i_still_want_to_be_doing_th...</a><p>Jul 2015: How I've Avoided Burnout During More Than Three Decades As A Programmer [this article]<p>April 2016: My Biggest Regret As A Programmer [is not going into management] <a href="http://thecodist.com/article/my-biggest-regret-as-a-programmer" rel="nofollow">http://thecodist.com/article/my-biggest-regret-as-a-programm...</a>
I really appreciate posts like these. Alot of posts that get popular on hacker news are about the struggle between management/developers and the best practice for success. This on the other hand is far more relatable to me. I am a developer that gets burnt out on jobs quickly and don't have a mentor I can look up to. A post like this gives me actions/patterns/history of someone that is still working and still wants to work in the industry like I do. Thank you for posting this!
"If you don't learn anything new, eventually you not only will hate your job you might not even have one anymore!"<p>This is true. I know many people who are in a job that they do not particularly love. And they stay because of intangible benefits like flexible work schedules or ability to work remote or sabbaticals. And I worry a little about what will happen if they ever need to find another job with their specialized skillset and years of the same experience, copied and pasted from one year to another. Many of these people will stay until their kids are out of college (or even longer). The market does not change much (stable) but there is no growth (few companies doing the same thing, or even contracting). However, I don't worry as much as I used to because we all live our own lives - coding is just a part of their lives, not the main one. Family is really it. To the 9 to 5 coders, I wish sometimes I could be more like you.
"(thankfully I'm not a Javascript programmer)"<p>As being a js programmer, i had to laugh at this :)<p>Nice article anyway, the sad part is, that i nearly had all those points at once, at one job(unpaid overtime, the management part, and so on...). The last 3 months i spent there was only because they asked me, and i was dump enough to say yes (they actually offered a 'bonus' to stay, but don't think anything big).<p>Something i would add, which i read somewhere, is when you begin to work somewhere, look around at the other people, how they behave and everything. If i knew these things a little earlier, i probably would not have ended up (a little) broken, and unemployed.
I went into consulting and have found the very same things. Before consulting, I was never burned out, and loved my job a lot. I could imagine doing it forever.<p>Now, I can't wait for it to end, am in a consistent state of burnt out. I have to work infinite hours to keep up.<p>I didn't really understand this before I took the job, would have been good reading as I tried to decide what was next in my career.<p>At the same time, I've learned a lot from consulting, and am much more effective now. So good lessons, but not worth the overall cost.
I think your first point is the most relevant: endless hours stuck trying to finish a project while struggling with a tight deadline/budget. It all boils down to a common problem amongst developers: guesstimates.<p>I believe it is a shared fault between clients and consultants. The former does not want to spend money/time preparing complete in-depth requirements/functional descriptions, they want to start yesterday and deliver tomorrow. On the other side, the programmer that bids on the safe side (b/c requirements are a blurry incomplete list of wanna-haves and it's better to over-estimate) runs the risk of not getting the contract, so he commits to a dead-end project: underpaid and overworked.<p>After many weeks of coding stuff that was not on a list, naturally one burns out. One subtlety: the burnout may not be due to the actual number of hours worked but to the fact that one does not see an end to it, one can never call it done (pressumably waiting to collect a payment due on delivery).
The burnout I'm struggle with is cognitive fatigue. I love programming but find my mind can only handle so many hours. Answer is simple, take some time off and exercise but easier said than done.<p>I always thought this is what people referred to when they spoke about burnout?
Good advice. The hardest part of following the suggestion is going to be getting past recruiters and HR, who don't want you in whatever industry unless you have 5 yrs+ experience of it already.
I avoided burn out becoming a freelance developer. So it is true that there are still difficulties but it really changed my work-life: always something new to learn, new challenges and the possibility to say "no, i won't do this job": obviously you will lose some job opportunities so you have to balance "No" and lost incomes but it is really better then burn out or hate a job that i truly love.