DEV Community

Michael Wolf Hoffman
Michael Wolf Hoffman

Posted on • Originally published at codewithwolf.com

The Common Ailments of Software Developers: Burnout and Imposter Syndrome:

Software engineering is a rewarding and challenging career. I thoroughly enjoy the teams I get to work with and products that I get to build. I wanted a career where I can learn new things and that every time I open up my laptop to work I am required to be innovative and creative.

With that said, I have had days, weeks, and months go by where my heart isn’t in it anymore.

Maybe I consider switching careers to something far from technology. Maybe I could open a bakery or write novels. Being a farmer could be cool, being out in the tall swaying grains with the wind and sun on my face and a subtle cackle of ringneck pheasants from a far carrying through the praries.

There are times where the unbearable load of always needing to learn to stay current and complete my tasks becomes too much. In fact, that is what got me into software development to begin with. I wanted to be learning on the job all the time. I changed careers from a position where I wasn't ever able to learn. Why is it all of a sudden wearing me down?

Sometimes I toss and turn all night struggling with a problem I am facing on a project only to come back to work the next day tired, exhausted, and frustrated. How am I going to solve anything like that? Maybe I had a nightmare where I was stuck in a do while loop. Why? I've only used those once! So scary.

Maybe I am looking at a list of conference talks some day and the pure genius of the speakers and the elegance of their code is something I know deep in my gut that I can never achieve no matter how hard I try. I am not a good developer, I tell myself.

Like I said, I like my job and being a software developer is something I enjoy immensely… probably 98% of the time. That’s a pretty good satisfaction stat for anyone at any job.

But when I start to feel like I mentioned above, it becomes pretty tough. Sometimes it’s an hour, sometimes a few days, but feeling like that for a month or two? That’s just awful.

While it’s awful, it’s also common.

There are two reasons software developers (or anyone) can feel like this.

Imposter Syndrome and Burnout.

Imposter Syndrome

Imposter syndrome is a fear that you are not good enough or authentic and that you will be exposed as a phony. It's common among software engineers, but can happen to anyone.

I first suffered from IS when I was learning in a 12 week coding bootcamp. I thought it must just be something the rookies struggle with.

Then I successfully built a few full stack web applications and got a certificate. I was really a developer!

I was asked to be a teaching assistant for the next course at that code school. I was the real deal… and then… I got imposter syndrome again!

It made no sense, there were days where I was teaching students that knew nothing about software development how to code simple HTML pages, and I still had imposter syndrome. How were they going to expose me as a fake? They didn't know what a variable or function was yet! It made no sense! And what will happen in 10 and 11 weeks when they are really coding real stuff? I’ll be exposed for sure!

Maybe it isn’t the fear or exposure all of the time, but a feeling where you are just not good enough to be a developer at your current position.

I was excited to finally just get my first job and not have to deal with IS anymore.

I was wrong.

To this day, I still have bouts of this horrible disease. What I have learned is that it is a normal part of life and any job, including coding positions.

I have heard senior and principal developers and CTOs talk about their Imposter Syndrome.


Imposter Syndrome is a normal part of being a software developer. It happens to us all.


Why Tho?

I think it occurs in our field so much for four reasons:

1. I just happen to hear about it with software engineers since it is my field. I am sure plumbers, artists, and truck drivers also can get imposter syndrome. Maybe even farmers (my backup plan if all goes awry.)

2. We have a very intellectual position that requires creativity and precise skill on many levels that not only challenge what we think, but *how* we think. 

3. When we get something wrong or struggle with understanding something, it can feel like a personal attack to our mind, how we think, and who we are..

4. The Dunning Kruger Effect
Enter fullscreen mode Exit fullscreen mode

Dunning-Kruger Effect

The Dunning-Kruger Effect states that people with low skill think they are very good, and those with higher skills think that they are poor at what they do.


The truth is, if you can code an application, complete code challenges, pass a technical interview, build a portfolio, get a programming position at a company, get a bootcamp certificate or CS degree or be self-taught, or do any of the things that some of us likely have done reading this post, then you are good enough to be a programmer (or at the very least learn on the job a bit and become a programmer).

Burnout

The other ailment that can often creep it’s way into a developer’s psyche is Burnout.

As software engineers, we take pride in our work and feel accomplished when we get a feature or bug fix written with clean code out to users to enjoy.

But what happens when we no longer feel that sense of accomplishment and just sitting down at our machine to write that code is a struggle?

That could be Burnout.

If you feel overwhelmed and stressed at work and you lose your sense of purpose for your job and no longer feel accomplished or interested in your work, you may be suffering from burnout.

This is again natural and normal. This is something that especially top performers experience, and it's common among but not limited to technical careers.

A top performer that we look up to may take on larger projects and have more responsibility… but that can come with increased stress and over the long term, that chronic stress ads up.

If you feel this now or have in the past, you may be experiencing (or have experienced) Burnout.

I have experienced it, and I’m sure most if not all developers have.

The Cure

The best cure is to prevent Imposter Syndrome and Burnout in the first place.

If you are experiencing symptoms of these horrific diseases, do these things now. If you are not currently suffering from one of these ailments, keep these in mind to prevent them from occurring.

Also, I'm not a doctor and this is not medical advice.

Take a Vacation

Not feeling work? Burning out? Feel like you aren’t a good developer? Take a week off. Don’t look at your computer, don’t write code, don’t think about work or projects.

You likely love writing code and building things. Take this time away from all of that. You have associated it with a stressful work environment and that needs to be remedied.

When you come back to your job and coding projects, you will feel a renewed appreciation for the work.

I tried this at one point in the summer. My girlfriend and our 2 dogs went to Wyoming to do some camping. I came back relaxed, refreshed, and ready to work.

Take a vacation before trying the next two suggestions.

Learn Something Fun and New

We became developers because we enjoy the challenge and reward of learning new things. Learn something new, that is fun. What has been interesting to you but you haven’t given the time to try yet? Try it out.

I have a link to a free Pluralsight course and the best books, blogs, and podcasts to learn software development at the end of this post to get you started.

Build a Fun Side Project

We also became developers because we enjoy building projects. Have a fun idea you haven’t gotten to start yet? Build it. The reason is that with learning something new and building something fun, you are beginning to associate coding with fun things that you enjoy as opposed to rushing through daily workplace stress.

Exercise, Sleep and Eat Well

I wrote about this in my post on Seven Habits of Highly Effective Software Developers.

If you take care of your health by exercising, sleeping, and eating well, you will be healthier, feel better, and your coding career will improve. Taking care of yourself is a great way to prevent and cure IS and Burnout.

Nothing alone will prevent and cure these terrible ailments, but it will help and you may be surprised how much it helps.

Meditate

Have you ever noticed that a lot of successful people and top executives meditate?

Ray Dalio talks about the importance of transcendental meditation in his life in his book Principles: Life and Work.

In 5am Club, the main characters spend 20 minutes every morning mediating.

These are two books that have been influential to me and coutless others and I highly recommend them.

Even Jerry Seinfeld recently said that transcendental meditation and weight lifting can "solve just about anyone's life".

That might be exaggerating some, since it hasn't even solved the fact that he isn't funny, but regardless, meditation is great for clearing the mind and helping you to focus on what is important.

Have a Hobby

This is another point that I write about in Sevent Habits of Highly Effective Software Developers.

Having a hobby and spending time doing that outside of the computer is a great way to separate work time, coding time, and other priorities.

My girlfriend and I made nightstands this weekend. We take our two dogs out for a hike or fetch at the park every day. I like to read, camp, hike, and do just about anything outside with my dogs and girlfriend.

This separates my time in front of the computer, thinking about code, and I can associate a powerful deep work experience when it is time to code because I am able to separate that focus and association when it is not time to serve up code.

You may think that being in front of your computer coding all the time will make you a better and more productive developer, maybe. But more likely than not, you are just burning yourself out and frustrating yourself with all that you have to learn. This puts you at risk for both IS AND Burnout.

So know how much time you can realistically and honestly spend in front of your computer being productive, and spend the other amount of time away doing something unrelated that you enjoy with people you care about.

Conclusion

If there is one point I would like to drive home in this post, it is that Burnout and

Imposter Syndrome are normal parts of being a software engineer.

Anyone and everyone can get it.

The top performers that you look up to are not immune, in fact they are at some of the highest risks.

I give some tips and tricks in this post that have helped me to cure Burnout and Imposter Syndrome in the past and I continue to use to prevent it from occuring in the future.

Discussion (0)