Burnout can affect us all, and unless we watch for the causes and signs in our teams and organizations, we may not see it coming until it’s too late.
Burnout affects all of us differently, but there are common organizational and team causes and mitigations.
Today, we’ll look at several different types of programmer burnout and ways that we can reduce them. But first, let’s talk about signs of burnout.
Signs of Programmer Burnout
Though individuals display burnout in different ways, some common signs exist that you should watch out for.
When observing your team, look for the following symptoms:
- an increase in unplanned absences;
- irregular hours, which can include getting in early, working late, or too many/not enough breaks;
- canceled or extended vacations;
- cynicism and an increase in sarcastic humor;
- an increase in sensitivity to feedback; and
- an increase in the number of mistakes, bugs, or rollbacks.
At a personal level, when you experience anxiety, depression, and emotional pain, these could also be signs of burnout.
For this, you’ll need help. When you reach this point, you should talk to a therapist or counselor. Although I’ve experienced burnout a few times in my long career and have learned a lot, I cannot and should not be considered an expert.
Now that we’ve covered some symptoms, let’s look at ways you can reduce burnout in your team or organization.
Ways to Reduce Programmer Burnout
Different types of burnout will manifest in different ways.
Ultimately, the goal with all of these solutions includes building a healthy team and culture. Even if you don’t yet see signs of burnout on your team, consider implementing these suggestions.
Also, for each of these suggestions, don’t bear the burden on your own. Include your leadership, your peers, and your teams in reducing burnout together. For teams and individuals, knowing that you’re all working together to make the organization better will reduce burnout on its own.
1. Encourage Use of Benefits
The first suggestion to reduce burnout doesn’t take much effort. To help reduce burnout, encourage everyone repeatedly to take advantage of wellness and company benefits. Folks should feel encouraged to take time off and unplug from work. And if your company offers any mental health benefits, share the information frequently.
Additionally, as a leader, you should use the benefits as well. Don’t demonstrate unhealthy habits like checking in on vacations or evenings.
Ultimately, the goal with all of these solutions includes building a healthy team and culture.
2. Reduce Overload
Burnout from overload and unreasonable deadlines can be easy to spot. When we see overworked teams and individuals working long hours and forgoing vacation, we know that there’s too much on their plate. When deadlines loom, hours of work extend into evenings and weekends, and there just doesn’t seem to be enough time in the week to complete tasks.
We know what a death march in software looks and feels like.
The fix for this type of burnout often takes organizational change.
At the organization level, focus on what matters. Don’t set arbitrary dates, and be willing to scale back scope to meet targets. When you’re in a leadership position, it’s your responsibility to push back on unreasonable demands and communicate setbacks to reduce this overload.
Meanwhile, at a team level, make sure your team prioritizes the most important tasks first. Again, work with product and design to push back and trim scope as much as possible.
Finally, at an individual level, know that you can’t take on everything. You can’t sacrifice yourself for others. Set an example for others by saying no to unnecessary demands.
Let your developers spend more time coding
See OpsLevel in action to learn how our portal makes more time for the work developers enjoy.Get your portal
3. Increase Meaningful Work
Another type of programmer burnout isn’t from having too much to do but instead having too little. This may also involve having what feels like unimportant work.
Working through tedious minutia or tasks that don’t clearly tie to the bottom line of the organization can be as detrimental as having too much to do.
When considering if your teams are affected, ask yourself or your team the following questions:
- Are the teams continually solving the same problems over and over again?
- Can the work done by the team easily be tied into the vision and mission of the organization?
- Does your team celebrate wins and successes across the organization?
- Does leadership call out achievements and outcomes related to the work that you’re doing?
- Do your teams own their services?
At the organization level, make sure each team knows the value that they bring to the company, the customer, or other internal teams. Whenever taking on new projects or features, ask questions and clarify the needs and impact before starting. If there are projects that don’t drive your customers or your organization forward, push to drop them.
At a team level, make sure everyone has the opportunity to take on challenging work. If only certain senior engineers get the interesting and challenging projects, the mid-level and junior engineers who make up your future may burn out before it’s their time to take those on. Therefore, it’s important to ensure that everyone feels challenged but not overworked.
At an individual level, make sure to challenge yourself. Ask what you can automate or what you can redesign. Don’t stay stagnant. Even if you fail, the work moving toward the goal will be worth it.
4. Automate Repetitive Toil
Next, let’s talk about toil.
Toil is the kind of work tied to running a production service that tends to be manual, repetitive, automatable, tactical, devoid of enduring value, and that scales linearly as a service grows. —Vivek Rao, Google SRE Handbook
Some amount of toil provides an escape from difficult work. It also allows us to add temporary value at a reduced cognitive load. However, too much toil can cause burnout through the repetitive, unending nature of the work.
To reduce toil, look for opportunities to automate processes.
At the organization level, look at what administrative or auditing tasks can be eliminated. For engineers, consider creating a platform engineering team to eliminate repetitive operations tasks.
Next, at the team level, challenge the team to identify and prioritize opportunities for automation. What maintenance tasks should be automated? What parts of our daily work can improve through automation or elimination? How can we streamline processes?
Individually, as a lead, consider what you do each week that doesn’t add value. Can you push back on it? Can you automate it?
5. Reduce Operational and Knowledge Silos
Finally, let’s talk about silos. Both knowledge and operational silos can cause programmer burnout, though it’s not always as evident to leadership.
First, let’s talk about operational silos. What does that look like? Oftentimes, you’ll see teams that have to open tickets with other teams or hear complaints from your team about not having the access they need.
When we build teams, they must be autonomous to drive their work forward. As such, requiring them to coordinate priorities with other teams to get basic tasks completed can cause burnout.
To resolve this, platform teams and systems should enable self-service options. Additionally, access should be given as broadly as possible so that everyone is able to get their work done.
With knowledge silos, these can manifest in different ways.
First, there could be silos around what services are available across the organization. When it’s not clear what services are available, teams often resort to holding multiple meetings, recreating existing services, or designing nonoptimal solutions to problems. Much of that involves organizational culture, but you also must consider how your tools enable or encourage silos.
At a team level, reduce knowledge silos by balancing known work and unknown work among the team. Encourage team members to pair up and collaborate on tasks.
Also, ensure that multiple team members can answer questions and work on the vast majority of work that comes into the team.
Reduce Programmer Burnout Before It Happens
Ultimately, we can’t prevent all burnout, but we can keep an eye out for signs and reduce the chance of burnout.
Additionally, if you make a conscious effort to check for signs of burnout and improve the environment for your team, it will help increase the trust that your team has in you to create a healthy work environment.
And once again, don’t work to reduce burnout on your own. Normalize asking for help by getting your leadership, peers, and teams involved. Work together to create an organization that reduces burnout and increases meaningful outcomes.
This post was written by Sylvia Fronczak. Sylvia is a software developer that has worked in various industries with various software methodologies. She’s currently focused on design practices that the whole team can own, understand, and evolve over time.