DEV Community

Even Senior Developers Have Imposter Syndrome

Kevin Hicks on February 13, 2021

If I told you I spent all day trying to figure out how to design the solution to a problem in a language I worked in every day and made absolutely ...
Collapse
 
edezacas profile image
Edu Deza

I define it as the paradox of knowledge: If you know what you don’t know, you know.

A senior developer understands many concepts and wants to know more in detail. This causes them to want to know more and feel like they don’t know anything or don’t know enough.

Collapse
 
kevinhickssw profile image
Kevin Hicks

In addition to knowing they don't know everything and want to learn more, there are also higher expectations either from other people or yourself the more experience you have.

We all have bad days where we might struggle with what turns out to be a simple bug. If you have more experience, you may experience imposter syndrome more cause "you should have known this".

Collapse
 
edezacas profile image
Edu Deza

I totally agree with you

Collapse
 
eelstork profile image
Tea

That, and the fact that, in IT the extent of what we don't know increases on a daily basis.

Collapse
 
seeila profile image
Seeila

Thank you for this article because at this point in my career, I moved from another continent and got promoted within 5 months as Lead Front-end to create the architecture on which all the future projects will be based on while teaching React to the devs in my agency, despite my little experience (I'm between a junior and an intermediate developer). My Imposter syndrome has never been so high and feel quite overwhelmed. This article helped me feel a bit better!

Collapse
 
kevinhickssw profile image
Kevin Hicks

I kind of understand what you are going through. Early on in my career, I got put in charge of re-writing a large e-commerce site and all its supporting tools as an unofficial lead. This was just a few years out of school, and the site was crucial to the company's success. For your specific situation, there are a few things you can keep in mind to help handle this:

  • Congratulations on the promotion. That is a sign your team and company trust you to do this. They may be seeing something you don't see in yourself. That is a huge accomplishment you should always remember, especially since being promoted in 5 months is rare.
  • You will make mistakes in the architecture that you won't see until later. It happens to the best developers and architects. It's a lot easier to see what is best and what doesn't work after the architecture is used on a few projects.
  • Other developers and yourself will want to change the architecture in the future. Maybe on the 3rd or 4th project, you make small tweaks, but then on the 30th, you make some massive changes. I would argue if this doesn't happen, that is a bad sign as it means your team isn't learning and improving. Again, it's easier to see what is working the best or could be improved after it is used a bit.

Again congratulations on the promotion and good luck.

Collapse
 
seeila profile image
Seeila

Thank you for your support, this helps a lot. For sure the architecture will change, there is always room for improvement.

Collapse
 
nhatnguyentim profile image
Hoang Nhat

I'm experiencing the same situation as you, so fighting, we will go through this! Thanks for sharing.

Collapse
 
imtyrelchambers profile image
Tyrel Chambers

This was a good read.

I've been programming for about 8 years. I've never been fortunate enough to be hired into a company for programming so I've been making my own way with my own real-world apps. Even though I know I'm a good developer and I'm capable of making real applications, I have the hardest time writing any sort of remotely technical blog, or even sharing my code/apps with other developers because I feel like I'm not qualified, because I haven't been in a "developer" position.

Collapse
 
kevinhickssw profile image
Kevin Hicks

I know what you mean. I feel the same way about technical blogs and sharing my projects (outside of my day job) because of this feeling. Even with a "developer" position at a regular company, I still experience it. I honestly went through it for writing this article. I originally wrote it a few weeks ago, but it took a while to be comfortable sharing it.

I'm still working on it, but what has helped with my writing is not comparing myself to others and realizing I probably can help at least one person. I also am hoping that if someone smarter than me reacts to it that it is a positive experience for me to learn from, not something to be ashamed of.

Collapse
 
ldrscke profile image
Christian Ledermann

With you all the way, no matter how experienced you are you will still suffer imposter syndrome. Like other problems the first step is to recognize it. I think a little of imposter syndrome is not a bad thing, because it reminds you that you still can grow. BUT: Do not give in, you are not inadequate, appreciate compliments.

Collapse
 
kevinhickssw profile image
Kevin Hicks

I agree. Especially in our industry forgetting that there is still room to grow and learn could end up being the thing that moves us closer to not being a good programmer.

I often prefer working with the developers that are always growing and learning no matter their skills or experience as they are the ones that will be great and continue to be great developers long in the future.

Collapse
 
abdullahsofiyu1 profile image
Abdullah Sofiyullah

I always have this shit in my head where I sat down in front of my computer feeling like " hey , are you really a Developer, what do you know and what if you are called for interview, you that you only know stackoverflow, YouTube and googling" .
I feel really bad and sad sometimes

But you what?
Anytime I browse through a new website or play around upwork and seeing clients asking " hey can you replicate this website " and I saw that website , analyse it and feel like I can do it well.

I smiled...am actually a Developer
Am not an imposter.🥰

Collapse
 
kevinhickssw profile image
Kevin Hicks

Exactly. It is important to recognize what you know you can do and that you can learn to do what you don't know.

And the truth is all of us developers rely on StackOverflow, YouTube, and google. Without Google, 99% of developers would not be able to do their job. Knowing how to use those resources is one of the most important skills for a developer.

Collapse
 
abdullahsofiyu1 profile image
Abdullah Sofiyullah

We are googlers..lol

Collapse
 
masinick profile image
Brian Masinick

I am now a retired software engineer with experience developing and maintaining telephony applications, desktop UNIX system software, hardware and software performance characterization, software system and applications testing.

I was once a software architect for a project to enable different Email systems to work together until better solutions were developed and I also pointed teams to some of those "better" efforts. I only had one or two good ideas for new projects, but I have written many much smaller tools to promote either faster access to software or convenience tools for keystrokes, keypad mappings, etc.
My emphasis has always been on solving practical problems; inventing something new takes time and many tries with more "failures" than success. All inventors, even the most prolific ones in any profession have more failure than success. The successful inventors make the most mistakes and often stumble on the solution. Look at Edison or some of the software inventors.
Even Microsoft, IBM, Linux developers, and so on have just as many "busts" as the rest of us; the ones using "free" and "open" software may even have their old "junk" out in the open, but with openness is the potential for multiple solutions and for collaboration; we ought to remember that we don't have to do it all ourselves.
A senior engineer may be in charge, but it could be the "newbie" who comes up with a great idea we have not considered.
The best way to go about our day is to share both our success and our failure; an honest look may in the long run bring out the best (and worst) in everyone; thanks for the transparency; it shows that you DO have experience and that experience is of great value!

Collapse
 
kevinhickssw profile image
Kevin Hicks

Thank you.

You are right about looking at both the successes and failures. We often hear about the "overnight" successes, but not the X number of failures those same people had before that success.

Collapse
 
eljayadobe profile image
Eljay-Adobe

I've been stumped many times. I don't get the imposter syndrome though. Not because I'm that awesome (I'm not... ha ha), but because I've groked that this stuff is hard. Sometimes even something fall-off-a-log simple can stump the experts, which is why I've learned not to be afraid to ask for help or at least ask for a second pair of eyes.

My ego can wait outside.

Collapse
 
kevinhickssw profile image
Kevin Hicks

Asking for help is so important in our field. I like to encourage people if they are stuck to ask for help after 15 minutes or so. It's amazing how quickly someone else can figure out an issue you spent hours trying to solve yourself. And it is so true that the experts also need help. I see a lot of my mentors and people I look up to publicly asking for help all the time.

I wouldn't really tie the imposter syndrome to ego though. I would say most developers that have an ego don't feel imposter syndrome or are projecting a big ego to cover up having it. Imposter syndrome is more about feeling like you don't know things you think you should know, being overwhelmed in a job or project, etc. than trying to be or appear to be the best developer. It's not really a logical thing to go through imposter syndrome, but our minds aren't always logical no matter how much we wish they were. 😄

Collapse
 
eljayadobe profile image
Eljay-Adobe

Then I consider myself fortunate. For those that have the imposter syndrome feeling... never stop learning, never stop striving. The amount of information available is overwhelming. There is only one way to eat a digital elephant: a byte at a time.

Collapse
 
mslupski profile image
Michał Słupski

I'm not a developer (yet) but I write content for software dev companies. Been doing it for over 5 years, still feel like I'm failing all the time. Even though I've literally written hundreds, if not thousands of articles, and none of my clients ever had any issues with my content. Impostor syndrome truly is a big ol' b-word.

Collapse
 
kevinhickssw profile image
Kevin Hicks

Yea it is amazing how long these feelings can stick around. I'm honestly not sure if they ever fully go away so we just need to be able to recognize it and know how to handle it so it doesn't bring us down.

Collapse
 
tokendev18 profile image
Aaron

This a great article man! I am not a software developer/engineer at a company. I work in IT security. However, I do find myself dealing with imposter syndrome when I seek to write some code to solve a problem on the job, personal projects (I have a gazillion I fished projects), or when I am talking to experienced developers about their code or reading it (always true to read the code to be informed and understand the complete picture)

I really liked when you said don’t compare yourself to other. This is huge. In one of my previous roles I was comparing myself to a guy who had been writing bash scripts for decades. And man let me tell the affect was crippling. I was struggling to write code I knew I could right.

This article puts everything into perspective and it make me feel human! Thanks again man!

P.S. To all the developers who will read this comment, as a IT Security guy, I want to say I have tremendous amount of respect for you guys and the work you guys do.

Collapse
 
kevinhickssw profile image
Kevin Hicks

Thank you. I'm really glad this helped you. Not comparing yourself to others is really hard not to do, but I think it's one of the most important things. It definitely has been one of my biggest struggles with imposter syndrome. We all have our own strengths and weaknesses. It's best to just learn from each other and work together.

Collapse
 
tokendev18 profile image
Aaron

I agree, it’s def important not to compare yourself to others. If you discover any tips on not comparing yourself to others let me know, I will be glad to hear them. Take care

Collapse
 
edwindijas profile image
edwin chiwona

@kevinhickssw I am going through a similar phase. This just gave me the confidence. 10 Years of professional experience got a new role at big company as a senior engineer. I felt like an imposter. I feel confident, I am going to perform.
Thanks for sharing.

Collapse
 
kevinhickssw profile image
Kevin Hicks

I'm glad this was able to help you, Edwin. Going to a new role and company is always a bit scary and makes us unsure of ourselves. We just need to remember what we already know and accomplished. You'll feel comfortable and good in the new role in due time. Good luck with the new role!

Collapse
 
kevinhickssw profile image
Kevin Hicks

You're welcome. I'm so glad this was able to help you.

Being praised for being able to quickly catch on is a great thing. I always love working with developers that not only can quickly learn but are also willing to learn. Where I work a lot of hiring decisions are decided by how quickly and willing a developer is to learn and improve rather than their skills and experience.

Collapse
 
theindiancodinggrl profile image
theindiancodinggirl

I love this.
Also, You don't need to be the best developer out there.
Loving the process is important.

Collapse
 
kevinhickssw profile image
Kevin Hicks

So true. It is so much more important to love programming and what you do than to be the best developer.

Collapse
 
ameliagapin profile image
Amelia Gapin

I’m a Staff Engineer with 15.5 years of programming experience and I have literally no idea what I’m doing. ¯_(ツ)_/¯

Collapse
 
harishagrawal profile image
Harish Agrawal

Some folks, who are perfectionists at heart (like the Virgo, if you believe in zodiac), are most affected with this syndrome.
I can relate to most of it.

Collapse
 
kevinhickssw profile image
Kevin Hicks

Yea anyone can experience this, but for perfectionists, it definitely is more affected by it. I go through this and am a perfectionist. It's the sole reason I never finished or released a side project even though I been trying to do that for years.

Collapse
 
thodwris profile image
Theodoros Kokosioulis

Thank you for sharing this! I couldn't resonate more with it 😁

Collapse
 
eelstork profile image
Tea

Especially senior devs
Part of becoming a senior should be taking the measure of our ignorance.
😉

Collapse
 
danielschwarg profile image
danielschwarg

It's good to see these kind of topics. Very timely for me. Thank you Kevin.

Collapse
 
curious_web_addicts profile image
Curious Web Addicts • Edited

I was familiar with the impostor syndrome and it accompanies me constantly. I try not to get too discouraged, but it seems to me that I will never be enough.
I keep studying and studying but I always forget the basic concepts and this often comes out during technical interviews where sometimes I can't answer the simplest questions even though I'm not really a newbie.
I look at my colleagues who always seem to be one step ahead of me and always manage to understand everything with ease.
I always have a thousand ideas to develop side projects and I try to write on the blog, but in the end, I always leave everything in half, frightened by the idea of not being prepared enough to complete the project.
Sometimes I feel so inadequate that I think it's better to change job.

Collapse
 
kevinhickssw profile image
Kevin Hicks

Don't give up on this if you enjoy the work. It is tough and there is a lot to learn, but making any progress and writing any code makes you a developer. The more experience you get, it will get a little easier and you should feel more confident over time. It's just important to recognize this feeling may not go away and have a way to cope with it when you do feel it coming on.

Technical interviews are hard. We get so nervous in interviews that our minds just forget things we know. It's so easy to forget in an interview just to remember it as you are walking out of the interview.

If you've done enough interviews, you may have taken the Fizzbuz test. As a senior developer, I failed that test. It was a mixture of nerves and not remembering how to calculate multiples since I don't work with that a lot.

Completing side projects and write for blogs is also really tough. That is putting ourselves out there even more than interviews or regular jobs. Just try to take small steps and slowly get more comfortable. Recognize that any views, comments, likes, etc. are a sign you are doing a good job.

Collapse
 
sidcraftscode profile image
sid

Nice article

Collapse
 
phongduong profile image
Phong Duong

We are human. Imposter syndrome is normal. But it's just our thoughts about ourselves, it always comes and goes. Thank you for sharing

Collapse
 
scroung720 profile image
Collapse
 
dana94 profile image
Dana Ottaviani

Thanks for the post Kevin. I needed this right now. 😄

Collapse
 
yusufcodes profile image
yusufcodes

Kevin, I really needed this sort of article right now in my life. Thank you for sharing your struggles and tips for handling impostor syndrome ♥️

Collapse
 
kevinhickssw profile image
Kevin Hicks

I'm really glad you found this helpful. It's hard to go through these feelings, but we just need to remember that even if most people don't talk about it, it happens to everyone and is normal to go through. Once we write that first piece of code we are developers and from then on we just need to focus on our achievements and keep adding even the tiniest new ones on to the list.