I had not heard the term Imposter Syndrome until recently. It’s an interesting concept – feeling like a fraud, even, and especially, while being successful at something. Apparently it is prevalent in the Computer Science degree field. I’m probably one of the most ambitious people I know – and I’ve never struggled with imposter syndrome. Overconfidence? yes. Feeling like a fraud? no. I’ve recently seen just how exposed new developers are to the concept o Imposter Syndrome – and how much it seems to affect them. I had another name for it back in the day. Self Doubt, or, Lack of Confidence. I’m going to dig into this a little bit more through this post.
I’m not psychologist – I’m just an engineer that has read too many blog posts and watched people struggle and want to help where I can. I think a large amount of the imposter syndrome is driven by how we learn about programming. Many of us learn programming by way of failure. We are given an extremely cut and dried problem – and told to solve it. Or we are given a clean working environment an told how to build the ideal solution. Real world programming doesn’t fit nicely into a box in many scenarios. (I can’t speak for Boeing, SpaceX, Tesla, or other high requirement threshold developers – they have different tolerance levels). Anyhow – this sandbox we learn in, doesn’t exactly prepare us for real world scenarios psychologically. It’s not like woodworking – the results are tangible. In C.S. it’s possible to make something good, an ship it. In woodworking – the angles have to be perfect – or else.
The self confidence is further eroded by the mistakes in execution. I was ahead of most of my class turning things in to professors. Why? Because I didn’t know if I would have time to work on it later. I had two jobs in college – and was still living with my parents. I couldn’t guarantee I would be able to study up until the deadline. I only had now to do the homework. Maybe I have A.D.D. – I never had trouble with object permanence though. I digress.
My first programming job was almost two years after graduation. There weren’t any entry level jobs where I was located in ’08-’09. Everyone wanted experience. I finally landed that job. A dream job. At a video game company. It was great – then my personal life took a hit – and I was laid off. I did a ton of soul searching, and job application at the same time. I was only out of a job for 20 days. I survived. But I had a ton of self doubt. I never felt like a fraud though – just that I wasn’t good enough. Or if I didn’t do 110% I’d get laid off again. I was also ambitious to a fault – and trying to move up the corporate ladder… I used my ambition to overcome self doubt.
The number one destroyer of confidence for developers isn’t hard problems. It isn’t difficult projects. It’s bug duty. Stick a single developer in a triage roll, and you’ll burn them out. Fast. Developers like a good mix of creating new things. I’m an oddball – I like troubleshooting things – they are like puzzles to me. Creating new stuff – eh – to a certain extent. But I don’t live for it. Re-creating something, that much more fun. I have a benchmark – and I can improve upon it.
This is probably the most rambling post I’ve written to date. Imposter Syndrome is something I’ve seen first hand. I had a very skilled developer. Possibly a speed demon. But he had some very specific imposter syndrome. It slowed him down, and, and it he ended up relying heavily on processes, and staying within the constraints of processes to justify himself as a developer. Process is great for judging one’s self. It provides a measurement. Unfortunately, sometimes the process isn’t sufficient – or isn’t malleable. This can lead to a slow down in an otherwise performant individual.
Another imposter syndrome symptom became evident to me, as I worked with a developer that wrote good solid code, and often had very in depth analysis of ongoing team politics, but had trouble speaking out in turn. The self confidence became apparent in 1 on 1’s.
Some of my conclusions I’ll draw around Imposter Syndrome, is that each type of developer represents their imposter syndrome differently. Speed Demon‘s try to write more code, Maintenance Master‘s move slower, Seeker’s look deeper – and Emergency Response Hero‘s just don’t respond. If you are struggling with imposter syndrome – maybe try to take some time retrospectively to figure out what kind of developer you are – and reach out and talk to someone. Leave a comment or send a response – IWBTD is intended to be a resource to help developers – especially those early in their career.