Dealing with imposter syndrome
Tags: discuss, programming, mentalhealth, career
Published: 2022-07-11 18:53:32

I have spent two decades solving problems by writing code and developing software. Despite this, I still find it hard to not feel like I'm both under-qualified for my role as a software developer and that I'm fraud, who has managed to pull the wool over the eyes of the people I work with. In other words, I am susceptible to feelings of [imposter syndrome](https://en.wikipedia.org/wiki/Impostor_syndrome).

I want to start by saying that I'm not a an expert on imposter syndrome. This post is a reflection on the experiences I've had throughout my career. I hope that perhaps by reading this it might help others, particularly those earlier in their career who might have similar struggles. That being said, if you're looking for help on imposter syndrome or want to learn more about it, then I'd recommend taking a look at [this](https://www.ted.com/talks/elizabeth_cox_what_is_imposter_syndrome_and_how_can_you_combat_it?language=en) TED talk by Elizabeth Cox as well as [this](https://www.ted.com/talks/mike_cannon_brookes_how_you_can_use_impostor_syndrome_to_your_benefit?language=en) one by Mike Cannon.

This post depicts how imposter syndrome has effected me as a white, straight, cis man. Imposter syndrome is a gendered and racialised issue meaning its impact can be [far more profound for minoritised groups](https://www.bbc.com/worklife/article/20200724-why-imposter-syndrome-hits-women-and-women-of-colour-harder). As a final disclaimer, I want to add that the intention of this post is not to suggest there's a problem with individuals or that individuals hold the solution, there are systemic issues that need addressing.

I first got hooked on writing software when I was doing my A-levels (aged 16 in the UK) and my Maths teacher gave me a numerical methods project and I wrote a little application to solve equations using [Newton's Method](https://en.wikipedia.org/wiki/Newton%27s_method). I remember thinking how it was almost like magic how the computer did what I commanded it - a feeling that I still get even today!

I studied Aerospace Engineering at University. I took additional modules that would allow me to broaden coding skills, mostly with Fortran and with the engineering focus we also learnt Matlab. I tried to cram as much coding into every module I could. The Computer Aided Design module I took, where typically you learn how to use a specific piece of software, I chose to use the built-in scripting languages to build my models in a fully parametrised way. I graduated with the highest degree in my year and won awards for my dissertation. I went on to do a PhD, where through the ever increasing amount of online resources available I taught myself Python, C++ and LabView (an intriguing visual language for interacting with hardware).

When choosing a career after my PhD it seemed like a no brainer that I should go into Engineering and work as an engineer. The idea of a self-taught person doing "real" software development didn't seem possible to me. So I got a job in the aerodynamics department of a Formula 1 team. However, I quite quickly realised that both my passion to develop software and the lack of software developers in the department meant that I quickly started "side hustling" as developer. I constantly felt like I was having to justify to myself as well as to my superiors the software work I was doing. Despite this, my main contributions to the department in my time there, where all based around these specific projects:

- Developing data visualisation tools.
- Replacing legacy excel worksheets with "proper" software.
- Designing Machine Learning models of the aerodynamic forces on the car.
- Implementing new software systems to drive and process data from the Wind Tunnel.
- Using software to automate the use of Particle Imaging Velocimetry during testing.

I learnt lots in my time working in F1 and the experience underlined my love of developing software. What's more, the work I did helped the aerodynamics department see the importance of having "full time" software developers as opposed to engineers doing some software "on the side". But when the time came for me to step up and fully take on such a role, I was overlooked. Part of the reason for this was because despite now having "proved myself" there was a voice inside me saying - but you're not a software developer, you don't have any qualifications, you're self taught, you're a fraud, you can't do it. So instead of putting myself forwards, I stepped back.

Not too long after this happened, my wife and I decided to relocate 400 kilometres north to another part of the country. Remote working wasn't really a thing back then, I had to find a new job outside of Formula 1. I brushed off my CV and decided I had two options really: return to academia after a long stint in industry or follow a new (sort of) career in software development.

Every software developer interview I had I remember immediately sitting down and feeling like a fraud. When I passed technical interviews and got feedback on how I was doing I could hardly believe that it was positive and that most places even wanted to hire me! In the end I had a few roles to choose from, including one at a University, which would see me returning to academia. I sat talking through the options with my wife. Looking back on that conversation now, I managed to convince myself that I should go with the role in academia because "I was using my PhD" - which in hindsight is a terrible reason. In my heart I knew I wanted to write code, that's my passion, that's what I love. But I wouldn't allow myself to do that because of my imposter syndrome.

Taking the job at the university was the worst decision I've ever made in my career. Coming back to academia and building up your research, whilst also having a heavy teaching workload are not easy and this coupled with some workplace bullying did not make for a fulfilling experience. That aside, even in this role, I looked for ways to itch my never ending need to develop software. I based my research around projects that would involve me writing code and I used numerical methods to bolster the pure maths that I taught in the classical mechanics lectures. After a year of working the hardest and longest hours that I have ever in my career with no positive feedback or support from the institution I worked for, I quit.

I went from the worst career decision of my life, to the best. I have a very vivid memory of it, it was a Friday morning and I was reading about a local company when I was on the metro to work. They were called [Tharsus](https://tharsus.com/) and their business was to design and manufacture robots and smart machines. After what I can only describe as the worst line manager meeting I've ever had, I came back home feeling depressed, spoke to my wife, who promptly told me "you need to quit and get a new job". Remembering the company I had read about on the metro, I pulled open my laptop and surfed up their careers page. There was an opening for a data scientist role. I wouldn't class myself as a data scientist, but the job description seemed to focus mostly on writing and implementing software.

To cut a very long story short(er) I got the job at Tharsus and within weeks it was clear that my skills lay squarely as a software developer and I've never looked back. I've been working there for three and a half years now. We do incredible stuff, work with new technologies and on a variety of domains.

Despite everything I've been through there are still times when I feel like I'm a fraud. When I feel like someone will see through the smoke and mirrors carefully constructed around me. Like I'll be "found out" and told I shouldn't be doing what I'm doing because I'm not up to the job. This doesn't happen as often as it used to - and to be clear, objectively I know this not to be the case. But when I'm having a bad day or something else in my life outside of work is on my mind, I can feel these nagging thoughts start to creep in.

My advice for anyone else who has these feelings is to:

- Tell someone close whose opinion you trust. They will be able to tell you how it really is (you're not a fraud) and hearing it from someone else is sometimes all you need.
- Write down objectively why you should be doing what you do. Going through the exercise of writing this post, I can see objectively that there's no reason I should feel imposter syndrome
- Don't let your own opinion of yourself get in the way of trying new things. If you want to try a different career, let the people hiring decide if you can do it or not. Otherwise, be confident in your own abilities.