Hello World: Curing impostor syndrome by embracing the suck
One thing we continuously speak about in the programming community is impostor syndrome and how to cope with it, but no one talks about tangible steps on how to solve it within yourself. What if instead of learning how to endure, we learned how to cure it? While It’s something that happens to everyone at some point in their career, we do not speak about how to overcome this demon and defeat it.
As both a developer coming from another field and as a person who has heralded others into this industry, impostor syndrome and I know each other well. It is a neighbor that frequents the halls of my troops’ self esteem, while regularly trying to move back into the barracks of my mind as well. If you know it, you know it is a mastermind of real estate renting space in the heads of many.
Once a week I get a message from a troop on the cusp of giving up. They aren’t getting it as fast as the others around them, they feel overwhelmed or the reality hits them that this is hard. They feel like they aren’t cut out for it, that they don’t have “it.” It messes with their egos and makes them think that they are better off quitting and not wasting mine or the teams time.
The advice I give my troops on how to overcome it is to “embrace the suck.” Then we discuss the best course of action for them to win the day. Embracing the suck is military slang that means enduring tough situations to get to the progress on the other end. It means toughing it out, doing the hard stuff first because you know the result is going to be rewarding, and it is ingrained in our community.
Let’s talk about the tactics that I use to help my troops, and that has helped me.
Find someone that keeps it real with you
One of my troops came to me one day to speak. He was smart as a whip, but he wasn’t getting his breakthrough, so he wanted to know why he wasn’t getting his desired result. Now, having been in situations before where you tell people the truth, it can backfire and turn into a big issue, I was initially tepid. But I decided that the only way to help him reach his goal was to tell him was to “hero up” and be honest. I let him know that while he is smart, he doesn’t really finish projects and doesn’t go deep enough in his builds, and it’s reflected in his work. Employers read this as you might not be as dedicated to the craft as they need you to be. We then created a plan of action to get him where he needs to be. Three months later, he landed a job that made him happy. None of this would have happened if I lied to him and made him feel like he was doing everything right.

One of the first steps to get over your impostor syndrome, is to find someone that is going to call you on your sh*t and let you know what you need to do to level up. By doing so you find someone much more valuable than any accountability partner, cause their only purpose is looking for the holes in your game. Before you clutch your pearls at this remember that this person’s sole purpose is to help you win. If you want to be better and stop feeling like you’re not up to snuff, you need at least one person who keeps it 100 with you and helps you identify weaknesses. That person will keep you grounded because they care about you, but they are objective, so their personal feelings will never interfere with telling you the truth and helping you become the best version of you.
Ironically, my wife is mine. She is the first person to call me out if I am not the best version of me, and she doesn’t sugarcoat it. She knows what to say to kick me into overdrive when I am subpar in my work. Find you someone who knows you and have them keep you honest.
Identify and train the weakness
Identifying weaknesses and training them for improvement is paramount. In the end, you’re only as strong as your weakest skill, so sharpening the areas you don’t feel the best in will help the areas that you are better in shine more. My coworker Tom is a great front end developer and a webpack ninja, but when he taught the team a PHP trick that made his front end skills look even more impressive. He was able to show things to our back end devs that they never saw. It made everyone step up their game.
Building a product that looks good has never been an issue for me; what always has been was coding challenges and whiteboarding. Full disclosure: I think that having people do things that have nothing to do with their job is the dumbest thing ever and an old gatekeeper tactic that keeps qualified talent out of the industry. Unfortunately, we have to deal with the world as it is until we get in a position to help mold it as it should be, and I am not the type to allow something like that to interfere with my goals, so I did the steps to get better.
I ordered a whiteboard off or Amazon and found 150 perfect beginner exercises on W3C resources that helped me focus on the syntax and think better without being too intimidating. I would spend only thirty minutes on a problem and no more. Time-boxing made it feel more real. The first one took me a week. I solved it in two days then built a UI for it because I wanted to train myself to go above and beyond in my craft. This practice led me to be able to do tougher challenges on HackerRank and Exercism. While it is still nowhere near my strong suit, I am not afraid to pick up the marker and get to work.
By identifying the weakness and training it, I also found a way to stand out by incorporating my strength (design and product building) into a part of the process. That way, it stayed exciting and engaging for me. It’s a reflection of my favorite saying, “Easy training, hard fight. Hard training, easy fight”.
I advise you to do the same. Identify your weaknesses based on the most harsh of critics; your interviews. Once you do that, make a plan and work diligently on shoring up your skills so that they can’t be used against you, but also help your other skills stand out.
RTFM ( Read the freaking manual )😂
You know the old saying that if you don’t want people to know something, put it in a book? Well, for programming, you put it in the docs if you want to hide it. You would be amazed how many people will do numerous courses and read articles before going to the docs and looking (It’s me, I’m people 😂).
When I first started, like many of you I always looked for the shiny new course, but now the MDN is my go to documentation resource. It holds more secrets than any of the books I have read, and it always has something new to show that instantly humbles me and makes me eager to learn more.
Having said that, I know that even with the vast improvements that docs have made over the years, they are still not as fun or engaging as some instructors’ videos, but promise that it’s worth it. Reading them and taking notes will make you a better developer by giving you a better understanding of the tools you use as well as help expedite your expertise in the industry. You’re truly doing yourself a disservice by not reading open source documentation.
Define your “real programmer“ metrics
Impostor syndrome is all about feeling like you don’t belong there, so, for me, this was a big one. When did I considered myself a programmer? If everyone has computer science degrees and spoke about Big O, LIFO, and FIFO, what would make me feel like I was a programmer? So I had to decide for myself what the metrics were that made me feel like I was a programmer. Was it if I was contributing to open source regularly or doing projects after work? Was it if I was a person with a million followers on Twitter or if the folks at the famous programmer’s table knew my name?
It turned out to be simple: It was when I got paid while wearing the title. It’s an ode to when I was training to be on the Air Force Boxing team and the boxer Roy Jones Jr. used to scream at me “Skills pay bills.” Once I stopped comparing myself to everyone and defined what made me feel like a real programmer, I took that metric and moved forward. I honestly can’t answer this question for you, but you can. That’s the most fantastic thing about tech; you don’t have to follow anyone else’s rules, you can lead, support, or be a maverick and develop your path. It’s beautiful.
Hopefully these tips and tactics they I have used for myself and others will help you defeat impostor syndrome or help you help someone else who might be struggling. I really hope this is impactful and actionable for you because in the end as educators. we really are nothing more than the sum of the people we help.
33 Comments
Really good approach and relevant in many fields. I will apply to me 17 year old son who struggles with impostor syndrome in high school.
Please read some of the many questions on Stack Exchange about impostor syndrome, and probably don’t “apply” it so much as invite your son to also read them.
I left a couple suggestions of particular Stack Exchange Q&As on another comment: https://academia.stackexchange.com/questions/11765/ive-somehow-convinced-everyone-that-im-actually-good-at-this-how-to-effect or https://workplace.stackexchange.com/questions/143268/from-non-it-background-to-being-a-programmer
As someone who works mostly solo without any feedback from other programmers, self taught, learning almost everything as needed on the job, impostor syndrome is a problem for me, thanks for the tips 🙂
I’m commenting regarding the “reading the docs” part. Over many years I’ve used a lot of tutorials and snippets as starting points but am only just in the last year or so starting to find documentation useful.
Because the bulk of documentation assumes too much prior knowledge for a newbie! Until recently, most documentation was, to me, like reading a foreign language, with terms and references that made absolutely no sense to me. The ability to make even a little sense of developer docs could in itself be counted as a metric!
“embrace the suck.” That’s so cool, bruh.
” In the end, you’re only as strong as your weakest skill”
that part is debatable, to me it makes much more sense to focus on areas where I am really strong so I can get better. There is always something to learn so do you want to be average at a lot of things or really good at some and not very good at others. That’s the main choice
I like to split the difference on this one, especially when the suck is bad. At times like that it is nice to remind myself of all the things I know how to do, and that I am actually getting a check for doing them.
When I have that lovely feeling of promoting the code to production and seeing the post-prod sign-offs, then I treat myself. I love to stretch and learn new skills, but they are paying me for what I already know, not what I want to know. So I try to plan it so Friday afternoons I have a clean plate and can indulge in some project using new skills or my weaker skills, so I can know I am not resting on my aged laurels.
This makes me feel like it’s not talking about impostor syndrome at all. This talks about enhancing yourself etc. That’s not what impostor syndrome is at all. It’s not the moment when you’re good in most things but not in some and don’t get your break. Not at all. Where did you get that idea? Would be useful if you could explain that somehow.
Impostor syndrome is when you ARE good enough but YOU don’t believe it. This has nothing to do with “you’re doing good job, just not doing enough in this and that.” Nothing. So why was this written? Is this rather Dunning-Kruger effect where someone thinks they know things when they don’t?
So a clarification would be useful, or changing the text to refer to “what to do when you’re good but not getting your breaks.” Because that’s what this talks about. Not about impostor syndrome
Agreed. This reads more like “you think you suck? You do. Here’s how to get better.” Maybe valuable advice…but not relevant for impostor syndrome.
Thanks. I thought I was the only one thinking this.
Imposter syndrome for man is feeling like you don’t belong like you’re a fake. In my experience, it comes from a lack of discipline as well as keeping up with the Joneses of tech. After spending the last five years teaching and dealing with people coming to my door, these are the things we come up with and help them not feel like they don’t belong in our community. Thanks for the comment though.
I hope this was a typo and not meant to imply that imposter syndrome is a male phenomenon. Additionally, when multiple people are saying that this approach is pretty unusual and doesn’t seem directed at imposter syndrome at all, one might embrace that kept-real feedback instead of dismissing it. I’m particularly concerned about the commenter that is now going to tell his 17 yr old son that he has inadequate discipline and has to work harder rather than, you know, reminding him of the ways he’s demonstrated his adequacy. I left some links in another comment that I think are more helpful; Zoe left some as well.
How did you get in to programming if you weren’t born into it? I’ve never seen a more defensive industry to let people in. Been trying for like 20 years and spent thousands on classes and college and I get told I need 5 years experience for an entry level job.
Start teaching, Lead meetups. Take freelance projects, build your portfolio.
I don’t know if this will help much but it’s my experience. I got into programming “late”, when I was 32, three years ago. I already worked in a software company at the time, in a technical but not development department. Got into the company in the first place as simple IT support.
After teaching myself how to code, I created a few pieces of software which would be useful to me in my role. Other people also found them useful and started using them. One of my project’s code was reviewed by development, since it was created to mitigate a problem we were experiencing on sites. When I decided I was good enough (about 1.5 years after I first started learning), I applied to join our development department, could point to the useful software I had created and the code they reviewed. Didn’t hurt that I was already known in the company for being good at technical stuff.
Anyway that’s how I got into it, without having any degree or professional experience.
I don’t know whether it’s true, but I’ve heard that’s the SF/Bay tech culture. It’s definitely not the case in NYC. I’ve worked with many great programmers who just have a highschool diploma and self-developed skills, and every company I’ve worked with has hired people fresh out of college with zero years of experience.
I’ve experienced Nashville, NYC and SF tech cultures and while they vary, they have some similarities.
If you’re not exaggerating for emphasis then you should have a portfolio to show for those 20 years which would more than account for the “5 years of experience” requested, especially if you spent money on classes and college.. perhaps the bigger question is, why are you trying to get an entry level position with 20 years experience as a programmer on top of “classes and college” ? It sounds like maybe you don’t know how to market yourself. Build a portfolio then meet people. Sometimes you don’t even need a portfolio.
Non-profits. They can’t afford the people who are already pros, but they need the same skills. So you find one that does something you believe in and you volunteer. Not only do you then build a portfolio of professional projects, but lots of these agencies and programs are headed by well-placed business leaders. Check the board of directors and find one that has someone from a company where you want to work, then impress them with your willingness to work at a fraction of the going rate, with the caveat that you need more time because you have a day job paying the bills.
It worked for me, and I was 15 years in the field doing “Degree Required” jobs before I ever got my BS.
I ran into this in a state very far from the bay area, it is a very real problem and I have been fighting hard at every company I worked for to get rid of nasty policies like “5 years of experience for an entry level job”. I was in a similar position to you, graduated from a college with a good degree, but found that every job needed 5 years experience, which is literally a catch/22.
I got out of it by weaseling my way into a role that had useful programming experience at the company I was working for at the time; if anyone at your company does any software at all, find a way to help them out in any way you can. If nobody does software at your company, push hard and sell the idea of using software at your company to automate something; think small, think deliverable, work on it in your own time if you have to. Even if they reject it, it’s fine.
I am usually a very ethical person, but I will give you a trick you can use. Do this *only* if you have studied the tech very carefully at your past company on your own and you know it backwards and forwards; if you can look up a reasonably large github repo in the language you are learning and understand it, maintain it, and commit to it and get your contributions approved, IMO, you are probably ready.
The reality is, at big companies especially, the people who are reading your resume and throwing it out are likely HR drones with zero technical experience; they see how many years you worked at company X, and what bullet points you list. Let’s say, at your current company you worked 5 years there, you may want to “optimize” the presentation of how you worked there, nobody says you can’t “emphasize” your experience one way or another to tailor yourself for a job. For example, you may want to put that programming project front and center, to highlight it as the most important part of your 5 year tenure at company X? Are you following me, my friend?
HR people will see your resume and not even really ask how long you spent on each bullet point, I’ve never had anyone call my past company and ask how long I worked on each bullet point, and even if they did, my past non-tech-savvy employer would likey say “yeah, they worked on that I think”.
I consider this fine, because engineers will still interview you, they are the ones that matter the most, if you can prove you know what you are doing, you will get hired and you will do well, too! I did this exact trick to get out of a very bad and very dangerous industry that would likely have been the death of me, I have delivered many projects and helped many people since, it went well for me. Good luck out there!
@Jerome Hardaway Great article, I have learned a lot here.
I have never heard a guy point things out like you have, TRUTHFUL.
I consider you a very brilliant man. Thank you for the awesome advice.
I can make myself a better person just by learning from you.
If you are not a parent/father/teacher/counselor, you should be.
Bless you.
“Easy training, hard fight. Hard training, easy fight” Freaking-A right. Get some! The only quoteable you’re missing in this gem of an article is “Fake it til you make it”
Just what I needed today. Thank you for sharing this!
ITT: normalizing the crisis of competence.
Imposter syndrome is a term for a persistent, long-term sense of inadequacy even in the face of success. It is not easily overcome by succeeding–quite the opposite! It means the person does not think that accomplishments are meaningful, but instead attributes them to luck or other circumstances.
This article presents imposter syndrome as something that you can easily overcome by ‘leveling up,’ which isn’t really that helpful. A person with true imposter syndrome won’t feel confident because he landed a new job. Instead, he’ll feel like he got it by luck or coincidence, not skill.
Women and minorities are considerably more likely to experience imposter syndrome than men, and that can be extremely detrimental in a field such as software engineering where these groups are already at a disadvantage. I don’t know that this article would in any way help overcome that. If anything, I think this might make someone experiencing imposter syndrome feel even more like an imposter if s/he had not ’embraced the suck,’ but instead just feels like s/he sucks.
Rather than simply using a term that feels convenient, I think that it might be worth spending time learning more about actual imposter syndrome and how it can affect careers–particularly because this is such a pressing issue for groups that are already marginalized in tech.
Sources:
https://hbr.org/2008/05/overcoming-imposter-syndrome
https://www.nytimes.com/guides/working-womans-handbook/overcome-impostor-syndrome
Hey,
As a minority in tech who comes from a background that has nothing to do with tech as well as a teacher and programmer for the past six years, I think I know a little bit about Imposter Syndrome. Thanks for the comment though.
What’s the inverse of imposter syndrome?
i believe your question is rhetorical, and my answer is: dunning-kruger and well played
Shouldn’t we first cure the “jargon syndrome” before writing about topics like the “imposter syndrome” without even introducing what that is? 😉
(Halfway through the article… still not knowing what “imposter syndrome” is, I finally gave up and googled it)
Fortunately, the StackExchange network is comprised of many people who know and understand what imposter syndrome actually is, and you can find helpful Q&A by searching there. For example: https://academia.stackexchange.com/questions/11765/ive-somehow-convinced-everyone-that-im-actually-good-at-this-how-to-effect or https://workplace.stackexchange.com/questions/143268/from-non-it-background-to-being-a-programmer Just like on StackOverflow, answers on these other sites on the network are voted on by the community, such that answers that tend to be most helpful rise to the top where they can be found by other searchers in the future.
I assumed everyone knew. My mistake, you’re right. In the future, I’ll do better. Thanks for the feedback.
> Ironically, my wife is mine
wut is ironic about that?
Well I’ve for long considered the whiteboarding a superficial and needless hassle, but at some stage it becomes relevant. For big and complex products you don’t have too much room to work by trial and error, so you have to know what you’re doing and just type it in once and for all.