I'm currently prepping a talk called Overcoming Impostor Syndrome for a development conference, and ever since my proposal was accepted, I've had lots of devs come up to me (in person or via email / Twitter) and share their personal experiences and stories about dealing with impostor syndrome in their own careers. There are TONS of developers at every skill and experience level who have felt underqualified when they really weren't, or like they were just faking it and hadn't been caught yet.
The response I've gotten to this topic so far has really moved and inspired me (and I haven't even given the talk yet!) For this reason, I want to try and collect some of these stories, to show that this experience is VERY normal and developers who feel this way aren't alone – especially junior devs.
If this resounds with you, could you leave a comment below, sharing your experiences with impostor syndrome? Maybe a time when you felt particularly like the novice one in a group, or just the attitude / techniques you've developed to push past the feeling. I think it would be really powerful to have a ton of responses, showing just how many of us have felt this way / still feel this way.
Latest comments (73)
There is actually a positive aspect regarding the impostor syndrome, which is a motivational drive to become better in order to get rid of this negative feeling.
I know few programmers who are real impostors and who works for way too much money, just because they can sell better the two or three things they know. They should be infected with a mutated form of the impostor syndrome.
But these impostors are only the exception. Most programmers works hard for their money and their skills are exceptional. Really, if you think about what a programmer needs to know today, its overwhelming. Try to write down your skills, your projects you worked at and see how many pages it will fill. Its a very demanding job and not easy to keep the pace with.
As a junior dev I feel like they're gonna fire me any second because I do this and that wrong, and my code is buggy, and I spent too much time on lunch (15 minutes). Didn't learn to cope with that yet.
I am not 100% sure if I am an Impostor or just suffer from Impostor Syndrome.
I had a buddy of mine helped me to get my foot in the door at my 1st really corp job while I was finishing up college to getting my BS in CS (which in retrospect feel did not give me a whole lot of anything to help me with in the CS world, learned everything I know in the field/on my own). I started in a reconciliation department under the impression that I knew VBA, which I didn't...
I didn't even know where in excel to start coding. They guy that helped me get the job some what mentored me and show me some basics, with that a google I was good to go and I would say at some point surpassed him. Then I moved on to using MS Access as well. Spent about 10 years of my life doing that until I was laid off...
Which then I found a job where they needed a VBA developer to help rewrite/clean up/maintain/develop new tools with Excel/Access. Then with in the 1st month they started working on a project to migrate all computers from XP to Win 7, which was being help up because of an app written in 1999 would not run on 7 machines. So with zero knowledge of building a proper program I set forth and some how pulled it out of my ass in about a week. This caused me to make the jump from VBA to VB.net, wish I would have know how similar they where to make the jump much sooner.
Since starting that job I have been moving Access Databases to SQL server, writing full on Apps, ASP.Net web pages and learned C# and much more in to OOP then I was.
That was about 3 years ago, still feel like I am faking it to make it. I have always been the lone wolf programmer, as the previous job it was do to fact that we where going around IT for the quick and dirty fixes, and currently is cause I am the sole programmer. It has been hard at time not being able to have someone to have discussions with on what I am working on and if I am handling it the best way.
Not sure if I am truly an Impostor or Not? But I have always been of the school if I don't know how to do it I will find away to make it happen.
Nice story, thanks for sharing 👏
I've experienced imposter syndrome in two main places:
The thing that helped me get over it was something David Foster Wallace said in his "this is water" commencement speech refer to (Video or Transcript if you prefer to read)
In the speech, he talks about how whatever you worship would consume you eventually and as part of an example, he says "Worship your intellect, being seen as smart, you will end up feeling stupid, a fraud, always on the verge of being found out.".
This helped me realize that the issues I've had with imposter syndrome have to do with deeper issues of identity and/or insecurity(this may not apply to everyone).
Since that realization, I've been confronting the core issue "worshipping intellect" and the I'm beginning to handle it better.
Also to back it up, I've been reading up on cognitive science about things such as cognitive load and fixation, and I've been realizing that pretty much everyone has the same mental capabilities, but we live in a society that has turned being mentally accomplished into some sort of superstitious/innate ability, we call people "genius" or "smart" when in reality, they've reaped the word of countless hours of hardwork in the right direction and with the right motivations. Also there's a lot that chance has to do with when it comes to being smart (as an example, think of how many people had bad math-teachers and how that goes on to scar people for the rest of their adulthood).
This is not to say there aren't actual geniuses: people who are genuinely talented, but it's very rare.
So, I guess my advice is this: if you're experiencing imposter syndrome, ask yourself if you worship intellect or if your identity is attached to "being seen as a smart person". and work your way up from there.
Also it helps to realise that life isn't always about you(refer to David's speech for more context) and 90% of the time it's just about solving problems....identity shouldn't play into it, reminding myself about that has really helped me.
Also please watch 'The myth of the genius programmer'
Hearing about Impostor Syndrome is nothing new. It's brought up every day by developers on Twitter.
I've known plenty of people who I thought could handle things that left them in fear.
The other way around, it's not so easy. I look at things I want to do, and I evaluate the opportunity, and if I decide I can't do it, I don't. People who know me sometimes offer encouraging words, but I wish they didn't.
Just because there's a thing called Impostor Syndrome doesn't mean it's the reason you can't do stuff. You could just be inadequate.
Reading Disney-powered "if you can dream it you can do it" tweets, empty encouragement and comments from people saying they know you're good at something without any way of them having that knowledge... is belittling.
Impostor Syndrome is getting talked about more and more now, which is great. However, as I can attest from talking about it at this conference series a few months ago, there are still TONS of folks out there who aren't familiar with it, and who have "Wow, I never knew there was a name for this feeling!" moments when reading / hearing about it for the first time. If one person reads something like this, learns about it, and is able to take the first steps to overcoming it, then it was well worth it being scrolled past by someone who already knew what it was.
I disagree with you that encouraging words are belittling – I think you have to try pretty hard to find negative impact in honestly-meant, positive words. I agree that the "if you can dream it, you can do it" thought isn't realistic, but I wholeheartedly disagree with the thought that anyone is inadequate. I believe that anyone is capable of learning anything if they're willing to apply time, hard work, and effort. They won't be great at first, of course, but anyone CAN learn anything. Impostor Syndrome is often (but not always) the thing stopping people from even being willing to take that first step and try something outside their comfort zone.
Frankly, I think it's a shame that you look at opportunities and judge yourself "inadequate" of rising to them, especially when it sounds like you have friends and family who are actively trying to encourage you. It's difficult for a person to judge their own competence in an unbiased way, and we often judge ourselves lower than is actually accurate. Again, not saying everyone is automatically great at everything they do (literally impossible). But, if you were willing to say yes to things you judge yourself "not good enough" for, I bet you would find yourself more capable than you think. Most developers are excellent problem-solvers and know how to take advantage of their resources. Even in a situation where you might not be the ideal candidate for the job, you could probably still figure it out and succeed, regardless. Putting ourselves in those uncomfortable positions is how we learn and grow.
But, I'm just some stranger on the internet. Take this, or leave it – just my $0.02.
I graduated with an AB in English. What do you do with a degree in English? Well, for several years after graduation I worked as an editor or proofreader for a few companies, sometimes freelancing. My first dev job came when a company offered a bootcamp for career shifters. I took that opportunity. I made it through bootcamp not without pain and sleepness nights trying to figure things out, OOP and other stuff. I did fine, I passed every test and evaluation for regularization, but still I quit. Now I know that must have been this thing called impostor syndrome. I just felt so inadequate. I felt that I could never be left alone because I might break something in the codebase. But I stood up where I fell. I took a six-month app dev course, finished, and now found a dev job. I must admit I still feel this syndrome attack sometimes, but my motto now has been "Fake it til you become it." :) It wows technical people, though, when they learn about my academic and work background.
wow! didnt know this was actually a thing! Im working as a junior dev at a media company. Im scared of changing companies because i feel this way all the time.
TL;DR: All the damn time.
Long, this is a confessional:
My undergrad (and only) degree is in chemistry. I pursued it because I love(d) the subject, and then realized that I wasn't willing to invest the upper-level time before moving on. Even worked a summer job on the single coolest project I've ever been on (particle accelerators are f*ing ridiculously cool). Then I left, did some other stuff and then became a (real = professional?) developer about 3 years after college when my company needed someone to step in when they stopped paying their web contractors to do work.
Ever since then, I've a) had to teach myself literally everything that I know about modern development (server, web, etc.; it was all completely new to me, the last thing I wrote before that was QBasic and static HTML) and b) been worried that I'm not good enough to really be doing what I'm doing. I now (different company) have a full time job where I am responsible for internal and public-facing web properties across multiple technologies and disciplines, and I do a bunch of one-off tasks on the side. Mixing and matching and not really doing anything 100% full-time led to me wondering if I'm just a "jack of all trades, master of none".
And lately, the last sentence has been the inverted in meaning. I'm pretty much exactly what it says, a jack of (most) trades and a master of none, but I know what I do and don't know, and I've learned over the years where to find the answers to most things, or to keep looking if a stackoverflow/msdn answer seems wrong (happens a lot). It's taken a while, but I'm dealing with the (frequently intense) feeling of being an impostor, because so many other people in this industry would be "impostors" because they learned something else first.
In many cases, it makes them good and even better. History, music, and english degrees teach context interpretation skills, communication skills, and patience (the power of a single thought vs. the decades sometimes required to realize it) in a far deeper way than any technical discipline does.
Even in the technical world, my degree is in chemistry. I didn't know how to run a dynamic shear rheometer, bending beam rheometer, proctor test, or triaxial shear before I took my last job either, but after years of working with them I know what they are, what they do, and mostly how to use them now. We learn by doing, asking, redoing, and asking again. Development / programming is no different, and I'm at long last coming to terms with that.
Slightly off-topic, I'd like to thank some people who almost certainly don't know that I exist *all twitter (@hacks4pancakes, @malwaretechblog, @viss, @swiftonsecurity, @binitamshah, @nerdpyle, @jessysaurusrex, and @bendhalpern). I'm a terrible lurker, but they've all presented information in a way that I can actually feel comfortable with the the quality (and more importantly improving quality) of my work.
Holy F that feels good.
I'm a professional developer for over 10 years now and was doing private dev stuff since 2000. I studied computer science (bachelor and master) and still often think I'm an idiot.
I have some ideas why this could be.
First, Twitter, haha. I follow some pretty highly skilled developers and always have the feeling I'm surrounded by brilliant minds, which makes me feel dumb. On the other hand probably <100 of the people I follow are such pros, so it's a really distorted feeling.
Second, as a dev I do new stuff all the time. Yes, I don't do one React-Native project here and then switch to HFT and then build a filesystem, but still, things are changing rather fast and every project brings its own problems to solve. Yesterday I told someone what a monad is, tomorrow I'm going crazy because the React-Native update doesn't work. A bit like "I got back from my space flight... so how does this microwave works... ah guess its bread today!"
Also, I have the feeling I'm not a fast learner. I learned to swim with 9 and riding a bike with 13, I had to do the 4th grade two times. I studied CS, but it took me much longer than the average student and I had to wait about 3 years until I got a place at an university, because my grades were so bad. Now I work as an mobile developer, this job doesn't even need a CS degree. So every time I learn something new I feel like it's some outdated crap everyone knew years before me.
Every time I start a new job I feel like I'm probably not qualified, but I'm sort of used to it by now and I can just keep telling myself "you'll do fine" regardless of how I really feel like it.
How I tend see it is that whenever I do start a new job I am "not qualified", as I don't know the project, or any of the specifics in it, but I can grow into it. New tech involved? No problem, I'll just have to learn it. New industry I don't know anything about? No problem, I'll ask, Google, and figure it out. New people, new expectations of me? It happens, I'll survive.
This being said, I've been a CTO for several years in a couple of companies now, prior to that I've been in lead and senior roles for a long time, and I am definitely competent to do the things that I do.
I think being honest with yourself and your colleagues is going to help a lot. Don't claim to know technologies or other things you don't know, openly say you will need to learn about things you don't know. I've gotten a job saying "I don't really know any of the technologies you use, but I can't imagine it to be a big deal for me to learn them" in the interview, and I did do very well at it.
I have no formal education in CS, but that really has not been any kind of a hindrance after I landed my first job. People coming straight out of school to work in the field are incredibly unqualified anyway, as schools do a terrible job at teaching practical skills in the field. I've seen people come from schools that seemed to focus on far future practically sci-fi tech theory (quantum cryptography) and useless things like writing assembler code on paper, instead of writing good quality code and using good collaboration tools. Practically every single person I've met who learned programming etc. on their own has ended up being a lot better at it than people who learn it at a school.