How To Deal With Impostor Syndrome In Software Development
May 13, 2019
Given the theme this blog has gravitated towards over a long and grueling production process (shout-out to Heroku for their seamless transition for deploying Django apps!), I’d like to talk about a problem many new developers seem to deal with… impostor syndrome.
I myself have dealt with impostor syndrome in the beginning stages of diving into this crazy world of programming, coding, developing and whichever other fancy titles you’d like to use for the job. I’ve seen more friends than I like to admit go from being really interested in learning to code, to shortly fizzling out. Although there are cases where dedication to the learning process just wasn’t quite there, more times than not it is a lack of certainty in their ability to succeed that’s the route of the problem.
“I’m just not tech-oriented person, I’m just not smart enough for all that.”
This is utter crap, and if this is you, you need to realize that.
Hundreds of thousands of people make a living programming and guess what, some of them are geniuses, some of them are mere mortals like you and I (or at least I am, you may be very smart), and some of them are err, let’s just say not as quick as the average bear.
The point is that programming is just a job like any other profession. If you want to become a lawyer, you better study law codes and pass the BAR, if you want to become a doctor, buckle down and rock your MCAT, (at least in Canada that’s what my pre-med friends study for… jeez I don’t really know what qualifies you to become a doctor), and if you want to become a programmer, you need to understand programming languages and basic computer science techniques.
What is impostor syndrome exactly?
You may very well be dealing with impostor syndrome and not be aware of it.
I sure was.
Have you ever walked into a classroom full of students, a room full of your coworkers, or even just been daydreaming about the possibility of being a developer and thought to yourself: “I just don’t belong here, I’m not one of these coder nerds”?
Boom, impostor syndrome.
Run up a quick Wikipedia search and they’ll describe it as:
“a psychological pattern in which an individual doubts their accomplishments and has a persistent internalized fear of being exposed as a fraud”.
Impostor syndrome is essentially the thought of not being good enough or belonging to work alongside your peers.
Where does impostor syndrome come from though?
If we think about the way programmers are depicted in our social environment, it’s no wonder many of us getting into the industry think we need to check certain boxes and “fit the bill” to be a programmer.
Ask yourself what you think of when you hear the word “coder” or “programmer”. What does this person look like? Is it a 6-foot tall tattooed first nations dude in skinny jeans who spends his mornings dead-lifting over 400lbs in the weight room? No, probably not your first choice, right? But that guy built the blog you’re reading from scratch (maybe we can talk about my thoughts on WordPress in a later post…), is graduating with a degree in computer science, and runs a web start-up that pays the bills (knock on wood for that last one).
It’s not either of our fault that this isn’t our first logical conclusion to this question, we’re human, after all. We all have an instinct to generalize situations and come to conclusions fast based on the info we have been given, its why stereotypes exist in the first place. And thanks to the folks in Hollywood and a few Instagram memes, whenever we hear the word programmer we think:
thin or overweight (never in between)
looks like he hasn’t seen the sun in a few months.
Oh, and notice I didn’t say she, which is a whole other problem that I think deserves its own article to do it justice.
Now, what do you look like? To be honest I don’t really care. But can you code? I don’t really care about that either really. Do you want to do everything in your power to learn to code?
If that answer is yes than allow me to congratulate you in advance, you’re going to be a programmer.
So, anyone can be a programmer, its easy then right?
Hell no. Learning software and web development was one of the hardest things I’ve ever undertaken in my life. And the process is far from over.
You are going to have to look out over the vast horizon of new technologies, best practices, e-books, boot-camps, university programs, etc. and realize that you will never know it all, no one does. You’re going to be lost in the beginning, that’s okay. You’re going to get stuck, begin to understand, think you’re a programming god, and then fall flat on your face in the realization that you still don’t know a damn thing, and that’s okay too.
The important thing is that you remember that we are all lost at times. The senior developer with 20+ years of experience under his belt is still googling the syntax to a for loop in python after not touching the language for a while.
Any developer anywhere can walk into a room with a technology they aren’t completely familiar with and feel like an absolute idiot if they don’t remind themselves that they are just as competent as their peers, if given enough exposure to the topic.
Okay, but enough of this self-love crap, how can I really get rid of impostor syndrome?
To be honest, impostor syndrome may come and go at certain point in your programming career and endeavors. However, if you’re aware of it and take an active approach to stop these negative thoughts you can nip it in the butt fast. The following are a few tactics that have worked for me when I felt my abilities weren’t up to par.
1.Practice, Practice, Practice
If you really want to get good at coding, you need to write code, a lot. Make it part of what you do, make it part of who you are if you really love it. Start small if you need to but do your best to write your own code on a day-to-day basis. In the beginning you can go through tutorials until the end of time because everything is so new and shiny and fun to play with. Once you’ve gotten your feet wet, I’ve found that picking up a personal project you’re truly invested in can do the trick. Consider things like creating the online portfolio you’ve always wanted or making the to-do-list app that you can find useful!
2. Collaborate with people above your pay grade
Don’t get me wrong, working with people at a higher level than yourself can be very humbling. You might think seeing someone do the same thing you did in half the lines of code will spike your impostor syndrome, but bare with me. If you sit through the process with someone, you’ll see that how they go about solving the problem is not so different from yourself. Pay special attention to when they get stuck. They may have a few more tricks up their sleeve with the experience they have, but once they get to a point where they just don’t know, it’s straight back to googling and trial and error.
You’ll see there aren’t many coding wizards out there, and it would shock you how many systems are held together by ducked tape and/or whatever worked at the time.
3. Talk to your colleagues
This one is easier said then done. Generally, if you’re going to take this approach I would suggest seeking out someone you have had a work relationship for some time with or someone you know outside of the office as well. The last thing you want to do is confide in your new development team that you believe yourself incompetent. You may not actually believe this. Even though you’re just looking for help pushing these temporary feeling under the rug, to someone who doesn’t have any background knowledge of you, it will sound like you don’t know what you’re doing. So, choose your confidant wisely, but I strongly advise you formulated feelings into words with someone. We humans are blessed and cursed with the ability to create conversations in our own subconscious that can become twisted and construed if not checked.
Sometimes all you need is a friendly reminder that your mind is running away on you, and more than likely, you’ll find that you’re not the only one who has these doubts.
The effects of impostor syndrome may come and go throughout your programming career. I often catch symptoms slipping back into my own thoughts when integrating myself into a new and unfamiliar work environment.
The point of this article is how we recognize this negative thought process and act to give ourselves a reality check. There are no coding wizards holding the keys that us common folk can’t possess. We all get a little lost at stages in our professional careers and lives. I hope this helped at least one of you and if you made it this far, thanks for dropping by.
Doing my best,
Like this post here: