“Wish you deserved to be here!” — Credits to Lisa Engler
This article is going to be a little different from the ones that I usually write, and it touches on a topic that is very close to home.
…and blah blah blah.
I started answering his question with confidence, because I have done React Native, and I know how it works. But the more I talked, the more I started to have this weird, uneasy feeling inside me, and in my mind, I started having a different conversation with myself.
“Do I actually know how it works? What do I mean by Native Thread? What even is a React Native Bridge? I‘ve used it before, by doing something like this
#import <React/RCTBridgeModule.h>but I’ve never read what is inside of
React/RCTBridgeModule.h, so can I really even say I know how it works? And if I don’t even know how
RCTBridgeModuleworks, am I even qualified to answer his question?”
I was first exposed to the world of programming when I was 13 years old. At 19, I did an internship in developing mobile apps while having classes in college. It is during my internship in 2016 where I applied and won my first Apple’s WWDC scholarship, and continue to win the scholarship for 2 more years after that. At 20 I got the chance to be the president of the largest tech community in my university, and also got my first paying freelance client. At 22, I received a 5-figure salary for a contracting job for one of the largest telecommunication companies in my country. And now, I am currently running my own software development agency.
It’s easy to look at me and think “Well this guy has it all figured out, he knows what he’s doing, and he’s going to have a great future ahead of him.”, but that is far from the truth. Programming is my passion, but for a big part of my life, I have been battling impostorism. I kept doing the things that I love, and every time I achieve some success, I start doubting myself.
According to Wikipedia, impostor syndrome is
a psychological pattern in which one doubts one’s accomplishments and has a persistent internalized fear of being exposed as a “fraud”. Despite external evidence of their competence, those experiencing this phenomenon remain convinced that they are frauds, and do not deserve all they have achieved. Individuals with impostorism incorrectly attribute their success to luck, or interpret it as a result of deceiving others into thinking they are more intelligent than they perceive themselves to be.
The funny thing about impostorism is that it isn’t constantly there. There are certain triggers that allow it to resurface, such as winning an award and getting a new job. And when it does resurface, productivity goes down, anxiety goes up, and words-per-minute goes down.
Impostor syndrome affects people from all walks of life, but this article will be directed towards my fellow developers.
“Hey man, you’re so humble!”,
“No I’m not, I just have imposter syndrome.”
— Not a real conversation
Technology moves at such an incredible pace, that you can be an expert in something particular now, and then become obsolete in 1 or 2 years. It’s no wonder why some of the most experienced developers feel most like a fraud.
We’ve all heard stories about the young tech genius who taught himself to code when he’s 3 months old from the comfort of his mother’s womb (of course it’s a joke, but it is not too far from how the media is portraying software developers), and we have all seen shows like HBO’s Silicon Valley.
The truth is, most people did not learn to code that early in their lives, and neither are all programmers capable of building the next billion-dollar app. And that’s okay.
Whether it is to understand a piece of code, to fix a pesky bug, or to look for solutions, we’ve all used them (because often times developer documentation is just not enough!). It makes you wonder if you can even do your job without them at all. If you can’t do your job without them, aren’t you just a professional Google/Stack Overflow user instead of a real developer?
The first step is to acknowledge the problem. Accept that the imposter syndrome is there to stay. I would love to think that I have a pretty good handle on the issue by now, but the fact is that it never truly goes away. Instead of trying to push it away or find a permanent cure to it, you should try to be aware of your triggers (things that trigger your imposter syndrome), and reflect on those triggers instead. Why does getting that new job makes me feel like a fraud? Why do I feel undeserving of that award that I won?
And even if I did not find a clear answer to some of those questions, the attempt on its own has allowed me to feel more empowered, and in control of the issue.
Give credit where credit’s due, even if it’s to yourself. You found the solution. You developed that app. You fixed that bug. Of course, other developers could’ve also did the same, but the fact is you’re the one who did it!
Life goes so fast, that most of us don’t really know how we ended up where we are. Look back at your achievements, however big or small, positive or negative, own it, and be proud of it.
Personally, I maintain a Trello board to remind myself of the things that I did, and each time I get the feeling that Mr. Imposter is coming out, I open up that Trello board and stare at it until he goes away. You could even use it as a part of your resume!
As it turns out, you and I are also part of the solution. If you are a senior developer, it is important for you to tell your juniors that it is okay to be overwhelmed. Keep in mind that the developer learning curve is exponential, and something trivial to you can be really difficult for a junior. Reassure them that everything is difficult until it becomes easy, and always offer your support.
If you’re a junior yourself, it doesn’t hurt to find someone who is more experienced than you to talk to. Developers might look like robots, but they are not, they have feelings too. Aren’t we all juniors to somebody?
“After learning Tai Chi 4 years, I realised everything I’ve learnt in the past 4 years is wrong. After learning Tai Chi for 8 years, I realised that everything that I’ve learnt in the past 8 years is wrong. After learning Tai Chi for 16 years, I realised that everything I’ve learnt in the past 16 years is wrong, but now I finally understand.”
I heard this somewhere, and it stuck with me. If all the things that you have learned in the past are wrong, who’s to say that what you’re learning now is correct? And if everyone is always wrong, shouldn’t we stop worrying about being correct, adopt the growth mindset, and start thinking about how we can all get better?
Before writing this article, I’ve talked to a couple of my software developer friends, from junior to senior level, and almost all of them admit to feeling like a fraud at some point in their career. Some of them are battling it right now, and yet, none of them are willing to openly talk about it.
I hope that this article is able to help shed some light on this topic, and to those that think that I’m being too humble, I’m not. I just have imposter syndrome.
Disclaimer: I am not a psychologist/therapist, nor am I qualified to give medical/psychological advice. All contents of the article are based on my personal experience, and by talking to people that I know personally. Please take everything with a grain of salt, and seek help from the professionals if necessary. If you happen to be one and find any inaccuracies with this article, do send me an email!