Impostor syndrome as a developer — embracing the void

Damen Hansen
Xero Developer
Published in
5 min readJul 19, 2016

--

We all feel a bit stupid sometimes

One of the most fantastic things about being a developer is operating in a constant state of discovery and continuous learning. We’re always acquiring new and valuable skills, but we’re also faced with needing to know even more. Despite being highly capable, many of us live in fear that we’re not really as good as other people think we are and one day we’ll be found out.

This is impostor syndrome, a psychological phenomenon in which people cannot internalise their accomplishments. Even with external evidence of their competence, people remain convinced that they are frauds and do not deserve the success they have achieved.

An impostor is a person who pretends to be somebody else.

Frank Abagnale, one of the most famous real-life imposters, worked under eight identities over five years and escaped from police custody twice — all before he was 21 years old. His exploits were captured by Leonardo Di Caprio in the movie Catch Me If You Can. Frank went on to become one of the FBI’s most successful lecturers and a financial fraud consultant. Let’s be clear, I’m not advocating fraud as a wise career choice, but life as an imposter kind of worked out for this guy right?

I have felt like an impostor many times — in fact it’s a phenomenon that has been a constant in my career. When I left school I worked in a large factory as a quality inspector. If something was sufficiently wrong on the production line, my job was to stop the entire production of the factory until the problem was rectified. Most of the workers were burly men that were paid per production unit, so the decisions that I made directly affected their pay packet. I remember my internal dialogue:

“Why on earth would they trust me with this, I have no idea what I am doing.”

I did know what I was doing, because I had been trained, and people had trusted me to do it. But lining up at the cafeteria at lunch time, looking at the other factory workers, I felt like a fraud.

Skip forward to the present day, and imposter syndrome hasn’t diminished with age. Here’s a recent conversation with some colleagues.
Me:
(senior developer) “Umm… aren’t Lambdas just syntactic sugar for a functor?” (Sounds pretty smart right?)

Her: (university graduate) “Yeah… but when written in calculus, a function becomes a variable. It’s just another unit of data. So you can apply the arrow operator to indicate a lambda.”

Them: “Yeah dude.”’

Me: “Wha?, doh, ummm, ….cool, riiiiiiighhht.”

Inner critic: “OMG, you are so dumb, she understands this better than you and you have been doing it 10 times longer.”

We all have this inner critic or ‘critical inner voice’. It’s that little ‘person’ in your mind that judges, belittles and demeans you and your actions.

“The first problem of any kind of even limited success is the unshakable conviction that you are getting away with something, and that any moment now they will discover you. It’s Impostor Syndrome, something my wife Amanda christened the Fraud Police.” — Neil Gaiman

Developers are particularly prone to this feeling

Technology is changing at an overwhelming pace. This can make developers feel like they are continually trying to catch up, and that the amount to learn is ever expanding.

Being a developer is hard. Anything worth achieving is hard.

The nature of our work means that we are exposed to constant mini-failures. Coding is quite often about try, fail, error, retry, exception, redo, refactor, yay, compile! A constant stream of micro feedback that says ‘no, no, no, maybe’. Think about how modern IDEs give you static analysis, telling you with every keystroke how wrong you are. Maybe this creates an imbalance in your perception of your failure versus your success.

Anxiety about not knowing enough, or being skilled enough is common and normal. We work in an ever-shifting landscape where not knowing how to do something is the norm. Embrace the void of not knowing.

So if this is normal, what’s the issue?

Experiencing impostor syndrome affects your confidence.

When you feel inadequate, you’re less likely to engage in activities that can further your growth. You may hold yourself back and be less likely to speak up or engage in valuable collaborative activities like pair programming, team discussions and code reviews.

It may be detrimental to your career development because you feel less competent to define or apply for new positions and so deny yourself the opportunity to reach your full potential.

How does “embracing the void” help?

There are many paths to awesomeness, but step one is awareness. Having an awareness of your impostor syndrome is a positive thing. It means that you have your ego in check and that you accept that there is an opportunity to become more masterful in your work. This is a healthy attitude and you can harness its power by doing some simple things:

  • Accept that it’s okay to be a beginner and feel inadequate. Keep learning and growing, and the sphere of what you know will naturally grow.
  • Raise awareness of impostor syndrome, talk about it and you’ll discover that you are not alone. Humility is the act of acknowledging those feelings without letting them stop you.
  • Stop comparing yourself to others. Their life is not your life. Know that people who consider themselves to be gurus are actually not, unless they are willing to share their knowledge and accept the things they do not know.

Coping with feeling like a fraud

Try these strategies to kill those imposter feelings:

  • Look for wins, list them, and make a habit of it. Consider what you have achieved and balance your failures with your successes. Look at how far you have come, and realise that other people are trying to get to where you are now.
  • Seek out ways to assess your skills in a more objective way. Realise that your internal measure of skills or competency is broken, because you are biased. Track measurable progress, define some practical goals, maybe set some OKRs so you can refer to objective data.
  • Reflect on your work and realise that you are wanted and needed somewhere, even if it’s showing Mum how to clear her browser cookies. Review your code critically, pick out and improve the things you see as you go through your learning journey.
  • Join online communities (IRC, Slack, Stack Overflow channel) or meetup groups that know the challenges of your particular specialisation and appreciate your knowledge.
  • Blog! The worst (best) thing that will happen is someone on the internet telling you that you are wrong!

Make asking for help your superpower

It’s common to be shy about asking for help, especially when you are supposed to be the person who is the expert. Find coworkers — programming friends and colleagues who can offer constructive feedback. Getting your work reviewed by a peer is daunting but ultimately rewarding. Take advantage of their empathy and advice. Expose your blind spots — the more honestly you can admit your faults, the more willing others are to help.

The truth is that many of the people around you can offer insights and help you in your work.

Asking for help is an admission, an affirmation, that you’re ready for action and prepared to put your dreams and desires to the test. Do it.

--

--