Everyone's been there.
Burnout is something that happens to the best of us. First, how do we even determine if we are burnt out versus just tired? There are many factors.
- Coding is no longer enjoyable and extremely hard to focus on.
- Increased irritability (as if devs aren't irritable enough).
- Feelings of depression.
Those are just some of the feelings you can get during burnout. All of them have one thing in common. You are stuck in place.
I work long long hours everyday, rarely getting a day off. I am a business owner and sole developer working on some big web projects. In order for me to complete a lot of these projects on time, I had to stay up late, sacrifice quality down time and sleep less.
Which is why I was an idiot for taking a second job.
A lot of people (especially entrepreneurs) are so obsessed with how fast they will become successful that they will sacrifice their mental health in order to constantly push themselves. Stepping out of your comfort zone is fine but putting yourself at serious risk for nothing is just stupid as I learned.
After the dreaded 6 weeks of the second job I did (while balancing project deadlines on the other side), I felt like everything I was doing was a waste of my time. I no longer enjoyed creating things. I felt like I destroyed the only passion I have. Would I feel like this forever?
The answer is no. I did lots of different things to help recover myself from this burnout. Here is what I learned.
Stop working so much.
Yeah yeah, I get it. Stop working so much and you will be good. Although this seems obvious, let's read between the lines. Let's say you are a developer for a company and work 5 days a week 9am - 5pm. You're getting a solid 8 hours of work in a day. That means you have 2 days off to do whatever you want to do.
Now when I characterize work, I am meaning coding that you are being paid to do (most likely code that you don't 100% want to be writing). If you work 40 hours a week being a developer. It's ok to leave it at that. This article perfectly describes being ok with just working as a programmer without it being their life.
Now if coding is your life. Learn to take a break. Code something you want to once in a while. Contribute to Open Source projects. Learn when to just stop.
Prioritize your health.
Programmers are generally unhealthy people. How can you blame us? Our jobs is to type for hours and then type for hours in different combinations. It's chaos. Luckily there are hamster wheel desks that allows us to walk while programming at our desks.
Personally, this isn't cost effective so instead I just purchased a gym membership and went every other day while improving my diet. Not only did I feel better about myself but my code got better and better. After a workout, I decided to rewrite a bunch of jQuery code I did 6 months back... yeah, that's how amazing you feel.
Try something new.
My life is fairly routine. Work, read, sleep, repeat. I started to go to the gym at this time and go for runs at night time to make things different for me and I felt motivated to go back to my life and work on my passions that I was slowly getting back from burning out.
My girlfriend and I started cooking more together and going on bike rides. Adding this to my life made it really exciting.
So all of these tips help to prevent burnout. What if I am already burnt out?
Although I did incorporate all of the above tips into my routine. The best advice I could've looked back on was:
Patience is key. Talk to your loved ones.
Feeling depressed is a horrible feeling. You can't do anything because you feel like you are too tired to do anything. After this feeling you will come into a state of negativity and self-doubt. Never have I contemplated so much life decisions in a short span. It's sad.
Despite all of this negativity in my life. I had to keep telling myself that just like it took a lot of work to let my brain get into this state, it will also take a lot of time and work to get out of it as well. Which is why I took a week off work to allow myself to recover. Sometimes you won't have this opportunity but the healing process may be a little slower.
Talk to your loved ones about how you feel and let them help you during your recovery process.
Top comments (32)
The first time I experienced burn out I didn't understand what was going on; since then I have learnt to take regular breaks every three months and weekends are for rest! During winter months I go to the gym and the rest of the year I do hillwalking, will often find me in the lakes or Snowdonia.
After that, just learn to say "no", a lot harder than you think! Been running my own business for 15 years +, self employed for 25 years + and still struggle the be realistic sometimes.
Great article
Thanks for reading Charlie :). Just like how athletes take a day or 2 rest, coders need to do the same thing considering we are using lots of mental ability. Very jealous of your frequent trips to Snowdonia...
They are not as frequent as I would like them to be, but the mountains are a great place to clear your head of all the clutter, bit like re-factoring legacy code ;-)
BTW last trip was a while ago, but plans a foot :-)
This cover_image is lit, pun intended :)
Rumours say that the cover_image is what dev burnout actually looks like...
I have a similar problem - in 2017, I had very little opportunity to code! Instead, I've been drowning in admin and devops work. Eep.
This year, I've started fighting for my coding time. I've begun prioritizing coding tasks above many non-coding tasks. Many non-urgent managerial tasks can wait an extra day or two. A lot of devops stuff can wait a day or five. Or ten. Whatever necessary to ensure that I get at least one good day of coding in a week.
This may sound particularly callous and irresponsible coming from a Lead Developer, but I've realized that working in a burned-out state helps nobody.
You know it's bad if you're getting linker errors and ENJOYING IT!
I'll still get my job done, but I have to have coding time to be able to enjoy it.
Off the clock, I have a schedule for study three different things I've been wanting to master for a while: SQL, the second half of Learn C The Hard Way by Zed Shaw, and Linear Algebra.
Even more importantly, I've started work again on my open source music player, Elements, and I've set some pretty strict boundaries there to keep it fun.
That's awesome! Devops work is some of the most tedious things I have done. Glad you are getting time for learning and some side projects :)
This is an amazing piece.
Thanks Fabian :)
I love crazily obvious posts like this... It's all completely logical, it makes sense, we should all know this stuff already; in fact, reading through it, it feels like I know what you're going to say before you say it. But the reason I love them, is because it helps reinforce knowledge of those habits that we all know we should have, but just don't.
Can't say I've ever suffered from a full-blown burnout, but sometimes it does feel like I live my life on the edge of one.. Unfortunately one of the side effects of insomnia, especially combined with an endlessly curious personality, is that I spend most evenings coding/studying/researching, often until the early hours of the morning. Then I start my day around 4am, doing much the same until I head to work (to code some more) around 7am. It's not my fault though! There are just too many awesome things out there, I want to learn about them all.. Lol.
This article couldn't have come at a better time though; it feels like the project I'm currently working on is trying to drag me down into a dark pit of despair, where each time I feel like I'm about to get it to the next stable point, something stupid goes wrong and I end up with more issues to fix.
Just this afternoon I inadvertently snapped at a coworker when she asked how close I was to finishing the feature I'm currently working on. Unfortunately that particular question just came up at the worst possible time, but afterwards I felt so bad.. It did make me realise that I need to take a few steps back and focus on something else for a while. Reading this post now just reaffirms that feeling.. Thanks for sharing some logic with us Lewis, it's greatly appreciated! :)
Thanks for the comment Andre :) you're right how it does seem like simple advice that most people already know but reinforcing these and letting readers hear it again more targeted towards their niche can really help with things. Maybe February is a month of burnout lol
I've managed to avoid burnout over the years, while having programming as a hobby too, by sticking to some guidelines:
A great mix of work and play is really important. It's all about the balance. Even with work emails, it should only be handled during work hours. Glad to see you finding a good balance while also continuing to code :)
This is solid advice even for non-devs. I can't stress this enough, and hope that more people will have the foresight to learn from our mistakes without having to repeat them their-selves.
One thing I can recommend is to go camping whenever you have a long weekend. It's amazing how quickly your circadian rhythm can reset when your only light after nightfall is a small fire and the stars. I have a terrible habit of being a night owl and sleeping in, but after my first night everything gets reset and is usually good for 3 months before my sleep schedule starts to drift again.
My husband's the same way, and I've noticed a remarkable negative change in our morale after half a year of being unable to make our usual excursions. (We live hours away from the nearest campsite and our car was stolen, so no convenient means to get there.)
Anyway, taking a weekend to unplug and get a completely different pace can do wonders, so I highly recommend it.
I had camping in mind when reading this but of course there are many other ways. What's great about camping from a dev perspective is how technology really is in every part of our lives. Just enjoying the wilderness and enjoying what is given to us by nature really puts things into perspective.
Thanks for the comment Cari, I am now looking to reserve a camping trip ;)
I Spent the last two years without any vacations, because I'm fan of learning and keep going ahead, and the jobs while they were good at the beginning they soon became really stagnant and time consuming, I ended up waking up at 6 am, and going back home at 9:30 pm between transport and job hours, so I barely saw my family between weekends, and some times I just stayed up late so I could keep learning something else, but there was a moment where those three points you mentioned at the beginning, just kept showing more and more and more, I decided to save enough for two months, and resigned to my job.
in the first month I even if I wanted I didn't spend more than 10 minutes touching code without getting angry, so basically the first month was my "detox" I went out more, spent more time with my family I spent quite a good amount gaming, and later on I re-discovered a teenage hobby I had, Music... I used to play electric guitar on my teenage years, and today I didn't have a guitar and I bought a electronic keyboard, so I could play some notes, this refreshed me so much, and when I ended those months (getting a job at the end of course) I am willing to keep learning as much as before, but this new job lets me spend less time working and more time with my family, and myself! I feel completely good now and ready to kick some code bases hahaha
My Advice for anyone in this case, is your job taking too much from you? try to request some time for yourself some people understand, some others won't and take time to yourself and what made you feel alive when you were younger, spend time with your family they are the ones that miss you most when you spend to much on jobs
Cheers Guys! don't forget yourselves!
Love this reply Angel. I 100% agree. I think a lot of the times people over invest themselves in programming that they forget that they are allowed to have other passions. Shortly after writing this, I listened to a podcast featuring Laura Medalia, a software engineer that talks about her love for fashion as well as programming.
It brings lots of points that you brought in as well. It's important for programmers to separate themselves from their jobs and have other hobbies that they can escape with.
Cheers Angel.
Thank you for this article. Earlier this year, I was overworking myself and neglecting my health. I ended up falling ill and collapsing at work. This was my first year out of college and as a full time developer, so I didn't know how to pace myself. I learned to put my health before everything, and I finally feel restored. Unfortunately, I used up all my PTO during this debacle and I'm afraid I'll become burnt out again this year :/
Agreed. Had burnout a couple weeks ago. I acknowledged it. I knew I wouldn't get anything coded for a couple days since I couldn't focus, but I kept sitting in front of my laptop, in case of an emergency.
A couple days later, the spirit of coding embraced me and I was back in full force.
Even better, a couple weeks later, my inbox is near-zero, where I like it to be.
Although harsh at times, experiencing burnout can be a good thing. Everyone needs to hit it once in order to know how to stay away from it. Glad you figured it out Anton :)