I was a bit overwhelmed and humbled by the positive response to a post I wrote about issues that occur in tech jobs that hit Hacker News while I was asleep, leading to a confusing President’s Day morning bombarded by notifications. That post was incomplete and not intended for general public consumption, and perhaps later I’ll dig deeper into the topics that I skimmed over toward the end if it’s of interest to anyone, but this time around I was hoping to talk about a topic that has been the single biggest result of many of those issues: burnout.

Burnout and the inability to recover from it while at a company is a major driver of leaving a job. At our core, we are human beings with limited capacity for punishment, and inevitably the body and the mind give up and shut down in self-defense. I’d like to go into some of the major causes of burnout and some potential remediation strategies. I say potential because certain moments at jobs are highly situational and therefore lead to different coping strategies that have varying degrees of effectiveness. This post may not be very enlightening, but I hope it’s a good starting point for discussion and thought. These situations are likely not unique to engineering. Lastly, I’d like to suggest that in some cases the situation at a company has become untenable, and that it may be time to explore other options.

Cut By Paper

We often use the expression “death by a thousand paper cuts” to describe a situation where it isn’t any single thing that kills us, but the sum total of being cut in many ways. I’d like to therefore break these sections up into various kinds of death. As programmers, we “kill” processes on a regular basis so I hope this doesn’t come off as too morbid, but here goes nothing.

This list is not exhaustive. I’m also not going to list solutions to these problems (spoiler: there are solutions, and this could be another post), because I’m assuming that burnout will arise from a lack of political power within the company that prevents you from having these issues addressed by management. Sometimes, we’re stuck in a bad situation, and we have to make do with what we’ve got. This is about coping strategies. If you’re stuck in these situations, my heart goes out to you, and I hope seeing these situations laid out helps you to organize your thoughts and plan for action.

Death By Aimlessness

  • Working on the same code/project for too long, either because of technical difficulty and no available help, or due to feature creep

It’s week 6 of what started as a 2 week project, and you grudgingly open the IDE and stare at the same piece of code you’ve been working on which has been reshaped by the product owner more times than you care to recall. As the project nears completion, you hope, you seek review from multiple people, but they all claim to be too busy on their own projects to help. You wonder if you should just merge it yourself, or wait longer. You calmly lower your head onto the desk in front of the keyboard, breath a sigh, and begin to rethink your life.

Issue: Humans get bored of monotony, and at some point, the interest turns from writing good code to calling something complete and doing something else. The longer the tunnel, the more the despair.

Remediation: Spend part of your time working on something that interests you, perhaps a small bug, perhaps working with a team you like, on the side for a bit to break the monotony. The effect is cumulative, and helps to unclog your sense of being bogged down the more you do it, but you have to stay within reason to ensure the project continues to make progress. If the project will meander due to feature creep anyway, waiting things out sometimes gives the product owner a chance to address the root issue: incomplete thoughts showing up as incomplete and changing design.

  • No roadmap or milestones, so you feel lost. Feeling of being lost for too long leads to apathy or feeling of sadness/oppression, burnout

On day one, you ask your manager about the roadmap. She says it’s still early and a work in progress, but it will definitely be here soon. Meanwhile, you begin to work on projects that seem to have definite scope, but as time goes on, you realize there are no checkpoints in place, and even though you feel progress is being made, you have no sense of where the end is. You ask your manager again about the roadmap, and she promises it’s almost there, but time goes on like this for 6 months. With no end or purpose in sight, you slave away at a project aimlessly ever slower the more time elapses. One day you simply stop, unable to see the point.

Issue: People can deal with a degree of uncertainty, but they must have a notion of what a completed objective looks like, and a general sense of time. You might graduate from university in 4 years, or perhaps 6, but knowing that at the onset allows you to know roughly how far along the tunnel you are, and knowing how many units you need and the required courses gives you a sense of how you’re doing. This, it turns out, is a critical driver for many people to continue to make forward progress.

Remediation: Make your own roadmap. While your manager meanders in obscurity, try to come up with your own ideas of completion, checkpoints, and rough time estimates, and don’t wait for her to be ready. This isn’t really your job, at least not directly, but it allows you to get through the fog of progress. An added bonus is that because this roadmap doesn’t need to be reported to anyone above, you can make it realistic and only have to justify it to yourself and your teammates.

  • Software that feels like it has no impact after an amount of time feels futile, takes away drive, feels pointless

That internal project your manager swore to you was vital for the continued operation of the company has been your life for half a year, and you repeat that to yourself on a daily basis as you watch your well-planned and well-executed features reach production, only to have no applause each time, no sense of satisfaction. You run into a user of your software and she says “oh yeah, that thing? It’s awful, I only use it every once in a while, but I wish they’d do something about it. What do you work on?” to which you reply “Oh I don’t know anything about that, I work on the public-facing site” and slink away.

Issue: The best-executed project will mean nothing unless you can feel a sense of accomplishment from it. If it feels futile, your drive will dissipate.

Remediation: Know yourself, and know what projects drive you. Is it B2B? B2C? Internal software? Is it making sure you’re running a fine-tuned machine, or building out new features? Has this changed recently? Depending on your answer, try to shift your work to gravitate as much toward these as you can. If no such project is available, discuss with management making one, perhaps on the side to start.

Death By Fatigue

  • Pager fatigue. Excessive on-call with noisy alerts, perhaps from another team’s software.

A page just went off, again. It’s 3 AM. You get out of bed, again, reach for your phone, and ACK the page. The site is having low traffic. Well, it’s 3 AM, but sure, check the systems, nothing anomalous, a similar trend is tracking across all metrics. You adjust granularity, resolve it, and go back to bed.
RING, it’s 3:30 AM, page again. Another team’s system had a bug. It’s a well-known bug, hasn’t been fixed yet. Follow the recipe to shut it up. Resolve, back to sleep.
Morning is here. Can I afford to take a shower? Will something go off? Will life ever be ok again?

Issue: Being on pager duty is one of the most nerve-wracking experiences. Often, alerts are too sensitive, or broken software doesn’t get fixed because other things are prioritized. Whatever the reason, the more pages go off, the more of a war mentality the human mind goes into. It’s constant fight-or-flight. This is not sustainable.

Remediation: Page the team whose software is broken, every time. Wake them up. Spread the pain. Unfortunately because the cause of this is external, the best you can do is get people to fix their software, or suffer with you. Reduce sensitivity of alerts. Measure pager fatigue somehow and work to reduce it. This has been discussed and measured by many companies.

  • Long hours on a regular basis. Weekends.

We have a deadline coming up that wasn’t here yesterday. It’s ok, I’ll work a bit more today and then when things calm down we’ll cut back a bit.

Next Day
It’s 7 PM. I suppose it’s about time to finish up. But it seems like others are still working. Well, they’re online. They’re probably working.
It’s 9 PM, ok, we’re done for today. That’s not so bad, there’s a few more hours in the day, I can watch a show real quick.

Weekend
Well I wasn’t going to work today, but we’re getting behind on the project. I’ll just do a little bit here and there to catch up.
Sunday Night
What happened to the week? I guess I won’t have time to do anything this weekend. I guess I didn’t last weekend either. When was my last break? What was life like outside of work again?

Issue: Needs little explanation, but bears mentioning. Sustained long hours reduce long-term productivity, and happiness. Pressure from the work environment, imagined self-pressure, or just sheer habit, can lead you to work an insane amount of hours well beyond the norm, and can make it difficult to stop.

Remediation: Box your time, and force yourself to stay within the box. For me, as a person who has worked remotely a lot, this has been a great strategy, as unlike in an office, there is little sign of people going home and other social cues. Apply pressure back on other coworkers or management to push back deadlines to reflect reality. Good management doesn’t want their engineers to burn out from something so easily avoidable.

Death By Incompetence

  • Stubborn/incompetent people in positions of relative power, being forced to regularly work with them, accept awful decisions and dealing with the consequences they create

Team Alpha is well-known within the company for being the most productive team, constantly admired by management. You’re put to work with them on one of their projects, and find a rat’s nest of bad design and error-prone code. You suggest some fixes, but they say they’re aware of it, and somehow it never gets addressed. You’re forced to work around their code’s broken API contracts, brittleness and limitations, and get pulled in when your code breaks due to theirs. You are scolded. Meanwhile Alpha has moved onto building 8 more projects with varying degrees of the same problems and is lauded by management. Nothing you say or do gets them to fix anything. Managers say they’ll talk to them, but nothing ever changes. Now you are told you must support all of their projects on top of your own. You’ve got to be kidding me.

Issue: Politics in companies is real. Currying favor with management and the appearance of productivity make for a great smokescreen. Management that doesn’t see that the damage a team produces outweighs their productivity is complicit in this. When you’re surrounded by awful things that no effort you put forth can correct, it leads to a feeling of helplessness and anger, and if you can’t get away from the offending team, it multiplies.

Remediation: Get as far away from the team and their software as you can. Running away isn’t ideal, but when nobody fixes anything, sometimes it’s the only option left. The maxim that “winners never quit” is a bit vague. It’s ok to quit an abusive situation. You’re trying to win at life, not just one particular situation. Failing this, you can do everything in your power to shine a light on the monetary damage a team is having, by introducing your own measurements, and showing various managers. This will likely lead to political warfare, but it’s an option if you have the stomach for it.

Death By Indifference

  • Being regularly dismissed, because for whatever reason someone doesn’t trust you no matter how many times you prove yourself, or because they refuse to hear what you have to say just because, or because their ego has them believing they are always right no matter what, and that somehow being hard-headed is equivalent to being a strong good developer

You bring up that a project’s time estimates don’t seem to match reality, because of certain inherent constraints. You are ignored and a deadline is promised. The deadline is missed by months. You don’t say “I told you so” but nobody ever looks back.

You warn that given enough traffic, certain race conditions will start to come up more often and cause issues. You are ignored and time moves on, the product’s usage grows, and the issue surfaces in a big way. You urge a true fix, but a workaround is put in place, which still periodically breaks. You bring this up to management, you are ignored.

You bring up a fundamental flaw in the design of a new system. The developer decides that this is worrying too much, they’ve built plenty of systems before, and you are ignored. This flaw rears its head quite soon, but now it’s hard to fix because it requires breaking an API. The developer does this fix at last, doesn’t thank you for ever bringing it up, and pats themselves on the back.

Alright fine, you just won’t say anything, good luck to them.

Issue: Trust is built over time at work, but unfortunately some people will never give you that chance. When enough people don’t trust you even after you’ve shown that you knew what you were talking about, you decide to just leave people be. This leads to general apathy while the world burns around you, and then it’s you that burns out.

Remediation: Find a core set of people that will trust you, and try to build your credibility out from there. Even if you fail to expand from this core, do your best to keep working exclusively or mostly with them. Working with people you trust and that trust you gives a sense of community, and of hope. You will never convince everyone, but you don’t have to, a subset will do.

Prevention

It should come as no surprise that the best way to deal with burnout is to never have it at all. The above remediation strategies aside, there are a few general practices that I will emphasize here.

  • Take vacations often

Many companies have an “unlimited vacation” policy which leads to people never taking a vacation in practice, because you can take it anytime you want, so you never do. Don’t fall into this trap. Use your time off. You don’t even have to go anywhere, or anywhere far, or even take time off longer than a day, but on those days where you’re truly tired, take that day off. If you do a day off here and there, it staves off the burnout more than waiting forever for a long vacation.

  • Mindfulness

Write a personal log. Take time to think about your present situation, if not once per day, then once per week. The longer you avoid thinking about things, the more the stress builds up, the faster you burn out. Be self-aware, and see for yourself what you can do to address issues as they come up. If you have people you trust, speak with them regularly about your issues. Not everything has to be a protracted discussion, it can just be a few minutes here and there, but it all helps.

  • Life outside of work

Hobbies and progress in personal life can often help offset the stress of work. While it won’t resolve the problems, it will help replenish the energy with which you can face another day. If work is taking away your time/energy to the point of taking away your hobbies, this will lead to a cascading failure. Leave work an hour early, or come in a bit later if you can, or leave a bit during the day to go for a walk or hit the gym or whatever it is you do. If you can sustain this, your work life will also become more sustainable.

  • Slow your work pace

Reduce your speed of output by working on fewer things, focusing on only a few, to the degree that your job allows you to. This expends less energy and typically will lead to less stress. Understand that productivity at your job is not just a matter of how good you are, but how good the work situation is. You have nothing to feel guilty about if you are staving off burnout in doing this, because it will mean that you are a more sustainable employee than if you were to burn out. Beware of false calculus of productivity here, think about it from a higher level. This follows for the same reason that 60+ hour work weeks lead to decreases in long-term productivity. Sometimes less in the short-term really is more in the long-term.

  • Change Teams

Not all teams are created equal, and sometimes you will find a better situation no further than within the same company, just on a different team. Reach out and see if you can move to a team that reduces or removes your causes of burnout. This is faster and easier than leaving the company, and can have many other positive benefits, like expanding your resume and experience. Sometimes the causes of burnout are at a level so high up that even this will not work, but give it consideration.

Recovery

Burnout has happened. How do you recover?

  • Talk to Management

If you’ve read this far, you’ll remember I mentioned that I’m assuming that management has failed at this point and that this was about coping. Well this is the recovery section, and I can’t repeat enough times: try to work through this with management. Oftentimes they genuinely don’t know you’re going through things, or how bad it is. Even after you’ve given up, and right to the end, make them aware of issues once again. If they still don’t resolve things, then you can at least say you’ve tried. But in the best case scenario, they can help alleviate some of the causes and allow you to keep getting by.

  • Sabbatical

Discuss a long break with your manager, perhaps after tying up loose ends. A smart employer will understand that the total cost of acquisition and training of a new employee far outweighs the cost of losing headcount temporarily. Sometimes you really do have to get away from it all. Make sure that some of this time is passive time just doing nothing at all, but that some is active time that uses your body or mind on activities you enjoy. Oftentimes people think that a vacation is meant to just do nothing, and if that’s what you feel you need go for it, but you’ll sometimes come back to work without energy because you haven’t been actively refilling the well of willpower. Do both.

  • Discussion

Find a good friend, bartender or therapist to discuss and work through your issues with. Oftentimes burnout persists because we internalize our pain for so long that we don’t know how to release it anymore, and although it’s a gradual process, it can put you on the path to recovery. This applies to both introverts and extroverts, but pick your most comfortable forum for discussion, either 1:1 or a group.

  • Shock Yourself

Try something completely different and out of the blue for no reason at all, preferably outside of your comfort zone. Visit a place you’ve never been to that you’ve been afraid of going to. Sometimes opening yourself to extremely new experiences works to burst you open in cases of extreme burnout where no amount of vacation or discussion seem to help. This is also a messier option as it will generate more discomfort of a different kind, but it’s a case of trading total burnout for partial discomfort, and sometimes rather than full recovery, we can only reach partial recovery to begin with.

Move On

When we have exhausted all of our options and enough time has shown that nothing will change, we must sometimes simply get up and leave, even at the best of companies. Of course, not everybody is in a position to just suddenly do that, so you may have to plan your leave, interviewing elsewhere, or preparing to change professions entirely, but it has to happen.

Different people seek different things, and different companies seek different things, and sometimes there’s overlap, and sometimes there isn’t. Sometimes a company doesn’t live up to the expectations it sets for itself as a result of bad management, and sometimes that management is not in a position to change in a reasonable amount of time (e.g. 1 year). In the field of software, there will likely be demand for engineers for some time to come.

So ask yourself:

  • Am I burned out?
  • Have we passed a reasonable amount of time for issues to get resolved?
  • Is there a reasonable path to another job?

If the answer to these questions is yes, draw up a timeline for yourself and get working on it immediately. Burnout is cumulative and can leave scars. Get out as fast as possible, don’t wait around.

Example:

  • Yes, I can’t stay burned out any more
  • 6 months have passed with empty promises and no change
  • 1–2 months of interview prep + interviews will land me a job

Explore the field, find a new place, find your peace. Life is too short to stay burned out at the same place in hopes of a change that may never come. Anybody who tells you that life is awful and you just have to deal with it has already given up on their own life, which is sad for them, but their situation doesn’t have to be yours. Don’t ever let someone hold you back from finding your way out of burnout. I promise you, there is always a better situation out there, but it begins by acknowledging the gravity of your situation, and taking the steps to free yourself. Once you do that, you will find a job that can sustain your willpower, your life, and ultimately your happiness.

Backend web developer. Silicon Valley / Tokyo.