What is Imposter Syndrome and how to overcome it?

Do you constantly feel that you are not good enough, not qualified enough, not smart enough, don't have enough experience or you don't belong, and that you simply got lucky to be where you are today? If this is you, then you have a classic case of imposter syndrome. And you are not alone. A lot of software engineers suffer from some form of imposter syndrome, and if you don't take care of it early on, it can lead to anxiety and depression, becoming a huge resistance to your career progression.

If you prefer the video format, I’ve got a video on this exact topic on YouTube… feel free to watch that instead. Otherwise, continue reading.

There can be many reasons for imposter syndrome, but at least in the software engineering world, I see three main reasons surface over and over again.

FIRST: You think everyone around you is smarter than you, therefore you question everything you do.

This happens frequently to people who have not gone through life according to society's textbook definition of success. If you ask people who feel this way, what a successful career means to them, they will answer - being a straight A student in school, acing all your advanced placement classes in high school, attending a top school, possibly Ivy League, applying to a handful of coveted jobs after graduation and getting offers from most of them and to likely work at a FAANG company.

But the problem of setting this as a standard of success is not that you gauge other people around you by this standard, but that you always remind yourself that you failed that standard. Have you ever wondered how many people around you have traveled this textbook path to where they are today? Probably none.

Well, at least I didn't. I was a pretty average student in school. I failed high school twice. Right after graduating college, I applied to 53 jobs and got rejected by all of them. So, there's that.

But today, the most common DMs I get, ask for things like whether they are doomed because they didn't do the textbook degree, or whether they should do competitive programming even when they dislike it, or should they follow software engineering because the salary is good or their parents would like them to.

All these things will set you on a long road where you feel you aren't good enough or you don't belong. And the best way to fix it is to let go of that notion of "one golden path to success". Instead, follow your passion and do what you love.

SECOND: You lack the skills expected of you.

For whatever reasons, you have lagged behind in keeping up with the skill set that is expected of you — whether due to family or medical reasons or just by being lazy or something else — and now you feel that you are not qualified enough, which takes away from your confidence and as a result, you feel like you don't belong.

Look, software engineering is a very rapidly changing landscape. Within the span of 15 years, just around web technologies, we have gone through so many changes that if you've had a 15-year career and have kept up with everything, you probably know - Java, C++, PHP, CGI, HTML, CSS, Ruby, VB, .NET, C#, JS, Python, Objective C, Sass, Less, TS, Knockout, Backbone, Angular, React, Vue, Go, Rust, Swift, IIS, AWS, Azure, Lambas, Functions, SQL, NoSQL, Message Queues, distributed queues, IoT, AI, supervised learning, federated learning ... I can really go on for 5 more minutes.

There is really a lot to learn and keep up with. And if you don't want to run the risk of being obsolete, you cannot get comfortable, you have to make learning a critical part of your day-to-day job. You don't need to be an expert in everything, just a handful. But you need to have a working knowledge of most of the current tech. And you can do that through books, self learning via free resources or through various paid courses.

THIRD: You think you need to be an expert in whatever you are doing.

You have probably been through multiple scenarios where you had to ask your mentor about something your were having trouble with, and they gave you the most elegant and precise solution. And you thought to yourself, "Wow, I would never be able to come up with something like that." And that is true, you probably wouldn't because you did not have the experience but they did. That is the reason they were your mentor. The only way to become an expert is to gain experience, and that takes years of work. But you can be effective at doing things even when you are not an expert because there are many things that make your experiences unique.

For example, when I wanted to talk about software engineering on YouTube, I had the same doubts. There are probably a gazillion people more qualified than me to talk about this. But if you think of it, how many of those gazillion people are good at telling stories, good at video recording and editing, good at relating and communicating with subscribers and fellow software engineers? That puts me in a unique spot, right? And more than 50k people seem to agree with that. Sure, there are definitely people even more uniquely placed and they probably have a million subscribers. But that isn't the point. The point is that expertise is not always required to guide others. It helps, but isn't required. If you try hard, you will find that most of you are equally good at guiding others while you learn because of your unique ways of learning things, gathering resources, managing time, creating processes, so on and so forth.

One way to get over this feeling of having to be an expert is to pair-program. I know pair programming can be daunting, and it is daunting because of impostor syndrome - we feel like we aren't good enough, we lack the skills or we aren't experts. But power through those emotions and force yourself to pair program, and you will very quickly find out that no one is perfect, everyone has their hacky way of doing things and everyone makes mistakes. In addition to that, learn to say "I don't know". It's okay to not know, no one knows everything. Be comfortable saying you don't know but trust in yourself enough to find the solution even when you don't know. These two things will liberate you from the feeling that you are not good at something, and give you the confidence to do great things even when you are not an expert! Try it!

Well, these are the three main reasons for impostor syndrome I wanted to talk about today, but obviously there are more, and I will briefly touch on them. Dr. Valerie Young, a leading researcher in imposter syndrome, states that there are 5 kinds of imposter syndrome traits:

  1. The expert, which we just discussed. A person who feels that they have to be an expert to do anything well.

  2. The superhero, who believes that they have to succeed in everything they do. Failure is just not an option.

  3. The soloist, who believes that they should handle everything on their own and that asking for help is a crime.

  4. The average fool, which we talked about as the first reason. You think everyone else is a genius and you are just average. This also links to the second reason I talked about, where you may feel you are average because you genuinely lack the skill set.

  5. The perfectionist, who demands that everything is always perfect. You think you have failed if you can't meet your own standards of perfection.

Identifying with any of these traits will help you fix the root cause of your imposter syndrome. And one last thing I want to mention is the "Spotlight effect" which is more of a side-effect to these traits than a reason for impostor syndrome itself, if the feeling that everyone notices what you do, everyone is looking at you, everyone is concerned about you. The truth is that everyone just wants to get by. They are concerned about their own problems, people rarely have time to focus that much on you. Whatever spotlight you are putting on yourself is a side-effect of one or more reasons, so sort those out first and then let go of the feeling that people care about what you think or do, and you will find that you will gradually stop feeling like an impostor and gain your confidence back. And hopefully that will help you focus on progressing through your career as your best self, instead of worrying about silly things that don't matter.

Previous
Previous

7 Mistakes to Avoid as a Beginner Software Engineer

Next
Next

Computer Science vs Software Engineering