How I'm dealing with Imposter Syndrome and Stress

Helen Anderson on September 11, 2018

I’ve been suffering from stress. Stress that has been fuelled by imposter syndrome. It’s not something I’ve dealt with before, because I have w... [Read Full]
markdown guide

Good on you for putting it out there like this - the more developers that are open about it, the less we beat ourselves up thinking it's abnormal.

I'm reading this at 3AM, having gotten up to fix a bug (I work from home), so that I can sleep again! It's a terrible cycle that I've been feeding, making relaxation contingent on having zero defects in some bit of code. I'm still trying to work that out.

Working remotely, the majority of feedback I get from clients is about bugs and features they are waiting for. When things go well, it's usually complete radio silence. That can be deadly.

It's so unfortunate that, in this industry, even if we do 99% of things perfectly, the emphasis is still on the 1% that is defective. I think it's a great idea to offset that with some way of acknowledging what did go well, which I think is a sign of a great work culture.

Regarding impostor syndrome, Elena had some priceless advice about fighting it:

As I understand it, her technique involves catching ourselves when we find ourselves using unnecessarily self-critical language. Being wary of how that kind of language frames things in our minds, and nipping it in the bud.

I remember having to quit a Java job once because the imposter syndrome was so bad that my brain just ground to a halt and I couldn't perform anymore. Every change I'd make to the codebase had that uneasiness to it, that made it extra work. Would have made a big difference if there was a little positive re-enforcement as well, instead of just that "Dozy Duck" toy that sat on the desk of whoever broke the build last, to shame them!


Thank you for the link and sharing your experience. Hope you can get back to sleep after the emergency bug fix :S

My sister ... a lawyer ...not a developer had some words of wisdom for me after listening to me vent. "You're not saving lives, nothing is that much of an emergency that you need to work all night doing it". She's absolutely right, in that the focus on getting 100% of the work done 100% perfectly can mean long unnecessary hours and some pretty awful self-talk.

I'm changing my focus to try and remember that, but it's easy to say and harder to do.


Blame and shame culture at a workplace serves no one. We share our successes and blames as a team and support those that need to learn more to improve.

I get down on myself sometimes too much, but at the same time, can point out a toxicity that is encouraged to put too much empahasis on competition with others instead of with yourself to improve yourself for a team.

I have thought about work or a bug at 3am but I didn't get up to work on it. It can wait until tomorrow.

Having a supportive workplace can suss out this sort of behaviour and help you not do this (I'm reading that the 3am bug wasn't an emergency but you worried and couldn't sleep). I sense there is residual feelings from the blame and shame place that may create this action. Sounds like that place is in the past. Easier said than done, I know.

I've quit a job where I just simply wasn't supported. Then again, I don't think I was that special there but I didn't like the feeling so I went elsewhere and promised to myself I wouldn't do that to myself again.

I hope you are doing well.


Yeah I'm good thanks Kat, hope you are too. That job I quit was back in 2009, and I've had lots of good work experiences since then, so not much residual feelings left from that. I've had a couple of slightly iffy workplaces in the past, and they were valuable for recognizing certain things to avoid. A certain swagger that management had, that I've learned to recognize.

For me, current anxieties are a combination of being an immigrant with a small child to care for, working remotely for clients I've never even met, that creates a perfect combo of insecurities that seem to peak in the late evening. And then the next morning it's all sweet again, it's nuts. But I reckon I've got this thing wired now, with a bit of help from a cognitive psych therapist.

I'm sure this is a very common thing with remote developers.

Though I think I'd better get off my butt and start networking, going to more conventions, meetups etc, because a purely remote connection with other developers just feels way to virtual!


Regarding imposter syndrome, I also quit my web dev job last month.


Remember the good stuff

This is actually a very good idea that I wish I had thought of back in the day. Keeping track of all that you've done is great and helps keep you rooted of what you can actually do.


I was really surprised at the list of what I had achieved and new things I've had to learn about in the last 12 months. Definitely a confidence boost to remember how far I've come.

Writing blogs here gave me the same kind of lightbulb moment, just because I do x all day long and it seems obvious, doesn't mean everyone does.


I actually keep a sort of daily journal in a text file where I write down everything work related I did that day. Before going home I look through the list again and am often surprised that there's way more on it than I'd have probably remembered/considered important.

That's a great idea, making it a regular thing to reflect on all your good work makes such a difference

It really does help.

I think doing reports of what I have done written (spoken reports I'm too shy and I don't want to brag or something) to someone really keeps it at bay. I'm required to report twice a week and it doesn't only help me realize I make contributions but help me organize my time better and keeps me accountable.

I find it important to reflect on what I have learned. Someone else could say it wasn't much but that's not important and not the point of it.

The important part, and I think it helps, is that it's used more observationally than to judge or comment upon and it has really helped me grow into myself more and I'm thankful for it. :)

Maybe use „git log“ as reminder what you did? :)

Missed this last comment until now, but that only works if most/all of your work is code related. I started this habit as I was transitioning from individual contributor/team lead to CTO. Since the git log approach did not work anymore (there were quite a few days where I myself didn't code at all) I started doing the text file as a way to record other things (PM, planning meetings, client relations, 1-on-1 meetings etc).


Leave work at work

This can be super hard and I don't have a good answer for this to deal with it. All I know it's that when I start having dreams/nightmares about work it's time to take a break even if it's just a staycation.

When you've had the dream equivalent of "I've never taken this class and now I have the exam" for "I think my commit broke prod" it is time to take a break...


My joke to people is that I probably break more stuff than I fix but that everything is broken all of the time. :)

Because all systems are fundamentally broken and imperfect, just like us, but that is what life is about. Acceptance of what is, but to know that it is ok to improve but to be ok with who we are and where we are at. It makes it easier to perform and to improve.


That was the tipping point, dreaming about everything breaking and not being able to get back to sleep!


I don't need to know everything
These points are in addition/compliment what you've already written.

Determine what you don't need to know. There is so much going on in so many sub fields that no one can really keep up with everything. Try to come up with simple ways to filter out what isn't critical for you, whether it's based on language, framework, platform, domain, etc.

If you know how to learn, learning is easy. For all the things you didn't keep up with, if they prove to be important enough it's not the end of the world if you end up learning it later. This can actually end up at a plus, where you don't spend time on all those things that end up being fads. Just make sure you spend enough time learning new things of some sort that this guess smoothly or you might have s crisis about learning new things :)

Sometimes being the stupidest person in the room just means you are in a room filled with really smart people. I actually made a career switch based upon this sort of experience, where I went into management because I didn't think I'd ever reach the level of some of my senior colleagues. It took some years to figure out the real stupidity was thinking that I was stupid :) Don't make the mistake I made and try to compare your junior self to senior colleagues.


Determine what you don't need to know. There is so much going on in so many sub fields that no one can really keep up with everything.

A couple of months ago I divided my myriad of needs and interests into 3 lists:

  1. My "core stack", i.e. roughly the minimum I consider "full stack": Docker, k8s, Postgres, RoR, Go, Vanilla JS, Vue
  2. The "this may soon be relevant to my work" list (e.g. ELK stack, Kafka, Elixir/Phoenix) and
  3. things I purely do for fun/out of interest (Haskell, OCaml, Rust etc.)

I try to make sure that on working days I catch up with some blog posts/newsletters etc from the first 2 lists, while things on list 3 have to compete with all my other hobbies and interests and therefore don't get too much attention lately.


I don't really think so ¯\(ツ)/¯ I even left out quite a few things on the frontend (knowing at least one major CSS framework for example), since I generally work on the backend side of things. I go by this definition I read once:

A full stack developer is an engineer who can handle all the work of databases, servers, systems engineering, and clients.

My "core stack" just about covers that.


'Leave work at work' is so hard!

First, great article! Thank you for sharing, and I think you're not alone. Every passionate developer I know thinks about work all the time. But is it really work if you love doing it and learning new things? "work" for some reason does not do it justice. I think a big part of it is changing one's outlook on "work".

The stress that comes with it is, I believe, inevitable. I love my work so much that I spend extra hours coding, reading about coding, or writing about coding. This gets overwhelming and exhausting at times, but I know at the end of the day I only do what I can manage and enjoy the discoveries along the way.

Everyone should have a healthy relationship with the things they love. If that happens to be "work", take some time to reflect and understand your limits so you can continue to do the things you love and keep your sanity! :)


Talk to people.

That's helped me deal with imposter syndrome. Chances are you aren't alone. By talking to people you will quickly realize the arbitrage of knowledge in your area. You know something someone doesn't.

Give it time.

Over time you gain knowledge and experience. Share that knowledge with others and you will make your Grand Canyon between you and others feel like a crack in the sidewalk.


Wow, I am also experiencing this and eerily came from being the only "data person" to now working with a team of six. It has been similarly challenging. I truly appreciate this post and am going to implement some of the techniques that you have found helpful. Thanks so much for sharing!


You’re welcome, glad it could help. it was a tough for days searching for what was causing my stress and feelings of being overwhelmed but now I know what it is and why I feel a lot more in control. Talking through it with my manager was the biggest help, and I’m really glad I did.

DM if you’d like to chat :)


Thanks! Will do. Sometimes it's so easy to forget that I'm not the only one experiencing this. :)

How are you getting on? Are things feeling a bit more manageable now?


Thank you for sharing this!
But you left a big question open for me

Leave work at work

I am able to free myself in my spare time mostly from thoughts about work. Years ago I was some kind of obsessive, improving solutions found during work hours in my spare time (because it was fun). Which is of course energy consuming. So I found ways to stop doing that.

But as soon, as I wake up - even under the shower - I think about work: What problems I would face and how to solve them. I go to work by bike. So I have about half an hour more time to think further about work.

Have you developed some kind of routine to "leave the work at work"?


That's been the hardest one to tackle by far.

I want to do good work, help people and make things more efficient. That motivation, while well intended, meant that I was putting all my mental energy, and waking hours, into thinking about solutions, reading about tech and being online in my evenings to help the UK team (my old team before moving back to NZ).

My manager said to me 'just because it doesn't feel like work, doesn't mean you aren't working'. I was never really switched off.

To get away from the cycle of work > home to get straight back online > watch tutorials and read > go back to work the next day, I've made a conscious decision to switch gears in my evenings and weekends. Putting more energy into a different passion means I'm not all consumed by work or work-related things.


Nobody knows everything. That's what Google is for. Focus on doing a few things well, the rest you should refresh yourself on or quickly read up on before you do them. Half the time there will be things you will repeat in the future and then you have an example for next time.


Awesome article! Lots of good medicine for impostor syndrome here.

There’s a lot I don’t know yet, the same as everyone else.

If you want to see this maxim writ large, check out a fun little project of mine:
There are more of us than we even know :)


Cold analysis will tell you the world comes up with new stuff faster than anyone can keep up with. Not knowing everything is pretty much a given.
Getting a grasp of what I don't know is something I'm working on instead. Not shying away from saying "I don't know (anything about) this" is probably one of my strong points. Because nothing hurts a project more than pretending you know the subject, only to go over time and budget and come up with a half-assed solution at the end.
Open communication and teamwork is where it's at ;)


Not everything is an emergency

Prioritisation is really hard, especially if clear guidelines are not passed down. This is one of the things I like about scrum, where I literally tell 6+ human beings in person what I intend to accomplish that day. It helps me focus on what I'll actually work on that day, because if I don't achieve that I'll need to explain to those same people why. This is also what I've seen a lot of very smart people struggle with, who often take whatever is newest as their priority.

As someone who F5's pretty hard on Jira I think I understand the ticket problem fairly well. I think it comes down to two related problems: what is important, and what can I provide that others can't. Depending upon that the reaction can change: do I start working on it directly; do I pass/suggest it to another SME; do I confer with others; do I ask for clarifications; do I ignore it - those are all viable answers. The hard part, which comes from experience, is figuring out which is which.


The tickets have been an interesting new part of work. I have found that jumping into action too quickly has meant that sometimes I end up being the middleman, when what I should have done was put two people in touch to figure it out between themselves. I need to remember to think 'Am I adding value?', and if the answer is no closing it off.

Thanks for sharing your experience, great to know that good things come with time.


Sounds like you have a job similar to mine. We have project work but we also have inbound requests from our Customer Care team, Marketing, and Legal. As the very smart Hiten Shah has written, "The hardest thing to do in software development is prioritize requests." That takes the stress down a bit knowing that you have limited resources so the Product team must be involved to take responsibility and ownership of the agenda.


absolutely, having someone further upstream prioritise the backlog helps too so it's not all on your shoulders


Another fantastic post Helen. This topic is something I believe a lot of folks out there are struggling with, myself included.

The two biggest traps I follow into are treating everything as an emergency and not leaving work at work. For me, this stems from the early days of my career working at a startup. In that environment, everything was an emergency because the company could very well fail if we didn't resolve issues.

This was both a positive and negative in my career. It was positive because I learned how to deal with stressful situations and wear multiple different hats simultaneously. However, it was negative in that I now treat all projects as critical emergency projects (even my own).

I personally need to find the balance here as I believe this is both a strength and a weakness. Essentially I need to learn the skill of walking away and saying "this can wait until tomorrow morning".


Thanks Kyle, that sounds very familiar ... working in a startup environment is incredibly different from corporate life and it's easy to get caught up in every crisis whether its something you look after or not.


You see your weaknesses all the time, and not the weaknesses of them. What could help is, if you ask them, where they think they need to improve/ask for help. What helps with seeing your achievements, are projects you have on github.

  • Remember the good stuff
  • I don’t have to know everything, about everything
  • Learn to forget information that is no longer useful

As someone who is learning programming, I usually feel overwhelmed by the vast number of resources available on the Internet and with this constant flow of overload information it can be difficult to know where to start learning, but we need to make fair decisions about what to learn according to our goals, as our processing capacity is limited and consequently, when the information overload occurs in the brain, it is likely that a reduction in the decision quality happens.

It's not possible to know everything but instead, if you want to learn whatever it is, you need to find what resources and information are worth learning to help you moving from A to B.

Hermann Ebbinghaus forgetting curve describes the decrease in ability of the brain to retain memory over time. The theory is that humans start losing the memory of learned knowledge over time, in a matter of days or weeks, unless the learned knowledge is consciously reviewed time and again. A related concept to the forgetting curve is strength of memory, which states that the time period up to which a person can recall any memory is based on the strength of the particular memory.

That is the way our brains forget information to make room for new memories. We need to learn how to forget the information that is no longer useful for us because this process will help us improve access to relevant information, without old memories interfering.

"We are what we remember" but "we also are what we chose to forget".


You seem pretty fearless with your progress/learning. So I think you have a pretty great approach to all this.


I'm sure it's been said already, but most devs (who are humble 🙃) feel this way!

One of the best ways to learn/progress in your skills etc. is to immerse yourself with people who are "better" than you and immerse yourself in learning material that's above your current comfort zone or sphere of understanding.

Many times it's just a sign that you are in an environment where you're growing! It really sucks to be in the opposite situation where you feel complacent...

Love the honesty in this post. You're doing great Helen - keep it up!


Hey, I'm a little late to the party here but thanks for opening up a discussion about an incredibly common issue. Impostor syndrome is often an internal, mental battle, that only bears tangential relation to the actual, physical situation in the world.

I wrote up my own experience with impostor syndrome here:

And a long detailed article about stress for developers here:


Really nice post. I've been there and it's terrifying, even being Senior


Great article Helen! 'leave work at work' and 'remember the good stuff' are areas where I can improve myself as well, so thank you for the good advice/ideas from there :) cheers!


"Leave work at work" is good mental health advice but poor career advice. That's a choice, of course, but it should be a conscious one.


Thank you for your post!! I have similar feelings and it's comforting to know that i'm not alone.


Thanks for the post. I am in this same situation constantly trying to prove i am in the same wave length as my team mates.


I wish I could make decisions like this too,where I work presently it's a daily struggle.
But I'm scared that i might not get another job.

code of conduct - report abuse