2 answers
Asked Viewed 251 times Translate

What is the best way to avoid burnout as a programmer?


+25 Karma if successful
From: You
To: Friend
Subject: Career question for you
3
100% of 2 Pros
100% of 1 Students

2 answers


Updated Translate

Stuart’s Answer

Firstly, I don't think there is "one Best Way" that could apply to all programmers: as with many things in life, it depends. I can only answer based on what works for me.


Secondly, 'burnout' means slightly different things to different people in my experience so far. I'm going to assume you mean suffering mental or physical health problems (minor or more severe) caused by your job. Please clarify if you mean something different!


On to some answers.


A commonly-given answer to this is that you should maintain a "work/life balance". That's a fair answer, but very vague. For me, this means things like:


* Limiting how many hours per day, and per week, you normally spend in your place of work (company offices, home office room, whatever). It can be tempting to do 'just one more hour' if you are enjoying the work, but one more and one more and one more is a slippery slope. You can make exceptions for truly special occasions e.g. some big sales pitch that needs a bunch of extra effort in the last few days: but don't let those exceptions become the norm.


* Limiting how much you engage the 'work' part of your brain outside of those working hours. Trying to remain available and responsive to work communications (email, instant message, etc) 24/7 is very draining in the long run. It's one thing to be hyper-available on special occasions (like above), but in general, consider trying to keep evenings and weekends free of any work activity. This seems to be less and less common in workplaces I've experienced, but I think it makes a big difference to my well-being, and nobody has ever objected to me not reading an email until Monday.


* Choosing carefully what you do with your non-working hours. Sleep enough. Socialize with non-colleagues (non-work friends can be great to have a casual grumble about work to!). Find a hobby that is very different to work: if you program at work and program in your spare time, you'll struggle to see the bigger picture and relax. Exercise regularly (walking, running, or biking to and from work is an EXCELLENT idea if you can do it). Eat a balanced, healthy diet at least _most_ of the time; nothing wrong with treating yourself to Friday night pizza, but don't have takeout every night.


I also think you should avoid feeling like you're competing with colleagues. In some senses and in some companies, you might be; but that doesn't mean you have to try to out-work them in terms of hours. Employers generally care about quality and consistency at least as much as quantity of output - and they probably care about a bunch of other, softer, skills as well as your main programming output. Talk to your immediate manager regularly about your performance and get their feedback. So long as they don't have concerns, don't invent any to worry about.


Be careful how you view and handle work deadlines. This is especially relevant for people just out of college. Deadlines in the real world usually aren't like assignment deadlines at school. School deadlines are fairly fixed, because professors want to see what you can do _in that time_. Most work deadlines are more like guesses for how long stuff's gonna take.


Think about this. You're in school for what, maybe 17 years? With pretty long vacation breaks thrown in. Then in work for at least 40-45 years, maybe more - with much less vacation time. It's a marathon, not a sprint. Very occasionally, work deadlines crop up that really justify pouring everything you've got into; the rest of the time, you should aim to be working at a consistent, effective pace, and if the deadlines aren't achievable that way, something's gonna change. Don't slack: work _hard_ all the time, but hard like a marathon runner is working hard, not like a sprinter. Don't let the deadline stress you out: talk to your manager(s) about them. Tell them what seems reasonable and achievable, and what doesn't - and why. They will probably either shift the deadline, lower the expectation, or add more programmers.


If you feel like you're heading towards burnout, don't keep it to yourself. Talk to people, in person, the sooner the better. Talk to your manager: they might well have been in your shoes, and have good timely advice. It's in their interests to get you back on a good footing. Talk to your non-work friends: they might have perspectives from other careers. Talk to your parents - it's surprising how helpful that can be, even if they have no useful advice! Talk to a doctor or therapist too if you are concerned about your mental health.


I will finish by observing that not all employers care equally about their employees' well-being and avoiding burnout. If you find yourself working for an employer who seems to disregard many or all of the above considerations, and seems to be demanding that you head towards burnout... step back and consider if that is the right place for you to continue working. Ask others for advice in the particular situation. Remember there are always other jobs!


1
100% of 1 Students
Updated Translate

Caitlin Margaret’s Answer

Hey Jordan, I wanted to give my quick perspective on this as well. I'm not sure if this is part of what you might be worried about, but burnout can be even more of a concern for minority populations in tech from a combination of unhealthy work practices and social stress. Here are some things to keep in mind to stay happy and positive while building your career. I am a software engineer, but these tips can apply to any job.

1. Know your team and manager. Actively reach out, communicate, and connect with them!

The people around you have a big impact on how you feel day-to-day in your job. Having a manager you trust is especially important - they are the ones that are giving you feedback, helping you learn, and guiding your career. Don't be afraid to reach out to your team and get to know them. Having a positive and trusting relationship does a lot for job satisfaction.

When applying to programming jobs, you are interviewing your prospective team as much as they are interviewing you. Think about what you value in a professional relationship. For example, it was really important to me that my team is willing to be interrupted for questions when working on something new. That helps me learn, and I wouldn't perform well on a team that didn't like that behavior.

2. Repeating Stuart's advice - make and keep boundaries between 'work' time and 'you' time.

Overworking yourself is the quickest way to burn out. A healthy working environment will respect your personal time and encourage you to leave work at the office. If you are working for 10+ hours a day and stressing out, that job/employer may not be right for you.


3. Always be on the lookout for something new or challenging in your work.

Boredom is another quick way to burn out. Humans like learning new things, so a job that has a lot of room for growth will keep you happy for a long time! Also, managers love seeing someone who looks for new things to learn and develop in the field - the more you learn, the more valuable you are.

If you have reached a point in your current job where you feel you don't have time to learn more, or there is little left to learn, start shopping around for jobs that would provide something new and exciting for you to learn.

4. Build a support network.

People really are important to avoiding burnout. Once you start looking for them, there are forums for just about any group of like-minded people you can imagine, especially in tech! Ask around or search online for somewhere you can talk to other people in the industry, ideally outside of your work. Having contacts you are turn to for advice when things at work are stressful can help a lot.

0