I'd like to tell you I have imposter's syndrome, but that would imply I secretly think I'm smarter than I think I am, which negates the whole imposter's syndrome thing. The funny thing is, I considered myself both brilliant, and the literal-dumbest-person-on-earth for absolutely all of my professional career, going back long before I started in tech.
Tech is a special case, too. Coding is hard sometimes (okay, a lot of times). The systems that code lives on are big and complex and always changing, and we're constantly getting new concepts and acronyms, FOMO springing eternal. I was sure that, by the time I got to the five year mark in the industry (right about now, at the time of writing) I'd be a software savant, seeing code in my mind's eye writing itself on chalkboards and etch-a-sketches. But some days - like today - that old familiar feeling reasserts itself. I feel dumb.
Let me tell you a story. In 2007 when I started college, I sat down with an advisor, and told him I wanted to major in computer science. I'd started making HTML/CSS websites as a kid in the 90's, and loved every minute of it. But up till that point, in that advisor's office, I hadn't really known how to channel any of that love for making cool websites into a career. I'd worked retail and hotel jobs, and had no real direction as far as life was concerned. So I told the advisor that CS was what I wanted to do, but I was worried, because I wasn't a "math guy." "Well," he replied, with a confident look, "you definitely don't want to get into computer science, there's quite a bit of math in that."
It took me another seven years before I even attempted a computer science course. I still think back to that moment sometimes: although he was wrong for smashing my dreams with such glee, he was right on the details. CS classes are heavy on math, and light on making-cool-websites. I found that out in my first algorithms class, where I was informed on day one that all homework would be solving complex math puzzles in C++. I lasted about a week in that class. I still somehow managed to get an internship, but it required a change in schools and a move across the state. Eventually, though, I fell into a real crisis moment: as the internship was drawing to a close, and as I started realizing I wasn't going to make it through another semester, all those lifelong fears about being too dumb to do anything came back in a rush. Here I was, 30 years old, failing at school, about to lose my only income as an intern, and living in a strange new place with absolutely no plan B. Admitting to failure is one thing, but admitting to being a failure is a big punch in the gut.
This story has a happy end (well, a happy bookmark, don't bury me yet) - the internship eventually led to a full time job, and several full time jobs later I sit here with five more years of experience and just enough confidence to write an article once every five years or so. But still, sometimes, I feel like I don't know anything and I've been faking it this whole time. Writing code sometimes makes me feel like a genius, and some other times makes me feel like a kid who stole a business suit, snuck into a big office building and tried to do a business.
Learning Javascript was fun. Adding React onto that was fun, too. And I felt pretty smart about all that. Even more complex subjects like state management and application structure were fun to work on, because there's a hundred ways to slice that cake, and I'm a big fan of cake. But then there's delivery pipelines, CI/CD configuration, PROD deployments, Webpack (a whole universe unto itself), Gulp (is that still a thing?) and Grunt, Git CLI, NPM scripts, route management, unit/integration/e2e testing (please help I'm scared), API's, endpoints, and a partridge in a... okay you get the joke. All of this is hard enough to keep in your head, but wait, there's more! Pre-commit hooks! Babel/ESlint/Prettier/XO config! Axe complaining about landmarks! What's a landmark!?? Performance metrics! Web components!! SHADOW DOM!!! LIONS! TIGERS! BEARS(please stop making dad jokes it's not even funny Brendan) OH MY!!!
Then there's those 10x (please take with an extra dose of irony) engineers who seem to know everything, and will Well Actually anything you think you know (one reason I don't write very much on technical subjects). Stackoverflow is full of people constantly getting shot down for asking the wrong question, the duplicate question, the irrelevant question, the question with not enough detail, etc etc. So if one didn't already feel dumb enough, there's always someone willing to make you feel 10x dumber.
I'm not writing this to be a solution to anything. This isn't a Five Things You Can Do To Combat Imposter's Syndrome kind of article. I just wanted to say that, if you're feeling down, if you sometimes feel like a kid stuffed in a business suit at the Business Store doing a business, you're not alone. This tech stuff is hard sometimes, and absolutely no one can know it all. Sure, you've got your 10x'ers out there, 10x'ing away. And they'll always make us feel bad, because they'll always know 10x more than us and have 10x more opinions. But that's okay. Let them do their thing. Focus on yourself. They're just ten kids in a business suit. Us? We're smarter than we think we are.
Top comments (4)
Thanks for sharing Brendan, seems I have a fairly similar story. I too stared coding websites as a teenager in the late 90' early '00 and likewise was told CS wasn't for me as math wasn't really my thing.
I'm now trying to break into tech at 33 and often feel ... Well slightly overwhelmed by all available technology out there and the amount of sh** I still haven't event read about.
Fingers crossed there's a happy ending. Great to read a down to earth article once in a while though... Something different from "how I learnt software development on 3 month and got a six figures job a week later" type of crap :) cheers
As long as you keep trying, things are going to work out, I can pretty much promise that (I mean, unless the inevitable heat death of the universe comes a lot quicker than I planned on). There's way too much to learn out there, and once I finally figured out that not only was I never going to learn it ALL I never needed to learn it all, a lot of the stress went away.
Great article, Brendan. Thanks for sharing.
Thanks Roger!