A Developer’s First Steps in Finding a New Job, Part IV Read parts I, II, and III of this series if you missed them: We’ve discussed knowing what it is you truly need in your career, working with recruiters, and understanding cost centers vs profit centers. This brings us to what I see as the final “first step” any developer should take in looking for a new job: overcoming imposter syndrome.
The absolute hardest part of being a developer is the constant feeling that you aren’t good enough. Impostor syndrome, the tendency to devalue your own work and become overwhelmed with the fear that you’ll be exposed as a “fraud,” is probably the single largest mental roadblock across all developers. It tends to exacerbate any other anxiety related issues you might have and can send you to some dark places from time to time. I don’t have good news here; it’s simply part of the game. You have to be able to manage your own self image of failure. The idea of imposter syndrome is vital to understand as you begin your job search; you need to know that it’s not your job to decide whether or not you can fill the role, it’s the company's job to determine if you can fill the role. Keep that fact at the top of your mind every time you find yourself hesitating to apply for a job you’d really love to do, but are afraid you’re not good enough for.
Find the Source
The first step in getting a grasp on this issue is to identify the source of it. In my experience the feeling that you don’t know what you’re doing comes from two places: you see someone do something, and you can’t figure out how they did it, or you set an expectation for yourself and fail to meet it. Once you’ve established the source of your imposter syndrome, the second step is to set up a plan for overcoming the feeling. When you see someone do something and you can’t figure out how they did it, you have to devote yourself to figuring it out. One of my most effective means of this is to simply email the person who did it and ask them how they did it. One of the greatest things about being a developer is that knowledge is not usually seen as something to conceal, but rather something to share. You’ll be surprised how often there is a blog post detailing the thing, the reason it came to be needed, and the process that was used to figure out the solution. Or the person will just email you the equivalent because being asked to share your knowledge is also one of the most empowering feelings you can have as a developer. And after all—developers sharing their knowledge is what Stack Overflow is built on. In any case, don’t stop at knowing the high level details; make sure you actually implement it. Practicing the craft is the only way to truly know that you can do it. Just knowing the details of how it was done isn’t enough. Be ready to devote yourself to a life of learning. The more devastating form of feeling like you’re not good enough is when you set expectations for yourself and fail to meet them. In all likelihood your expectations of yourself were influenced by your boss or coworkers or teachers. Failing to meet their standards is extremely frightful because they are the ones responsible for judging your ability and awarding your compensation accordingly. It is extremely difficult to temper expectations in others without feeling like you’re actually still failing. In my experience, most of my anxiety from this form is due to assumptions I made about what the expectations were, and those assumptions turned out to be false. Either my assumptions about the order to build things in was
wrong or my guess as to what issues would come up when changing a system were wrong. Sometimes it’s that I simply can’t debug a problem because my expectation about the output is wrong, and I can’t figure out why. The first thing I do in every case is try to explicitly state my assumptions and double check that I’m on the same page with anyone else who should share these expectations. In the case that it’s just me, I’m a practitioner of rubber ducky debugging. This process is by no means a complete solution, however, and I still regularly go through the highs and lows of meeting and missing my own expectations.
Don’t cut yourself off at the knees
Remember: it’s not your job to decide whether or not you can fill the role, it’s the company's job to determine if you can fill the role. We tend to avoid any job we perceive as being above our skill set, without even giving the company a chance to evaluate us. Don’t cut yourself off at the knees by only applying to jobs with titles that don't trigger imposter syndrome. Especially don’t let insecurity limit you to only searching for “entry level” or “junior” jobs. Often times jobs listed as entry level are not even actual developer jobs; they are analyst jobs (writing functional specs) or recruiter spam looking for new candidates to pass on to other companies. It’s okay to apply to junior or entry level jobs, but don’t limit your search to just those jobs-—whatever your skill level. Take stock of your own self-evaluation and its inherent flaws, and remember that your only job is to represent yourself clearly and honestly, the best you can. If you’re truly not qualified for a position, the company or recruiter will let you know that and you can move on. That concludes the foundation for finding a job that’s a good fit for you. It’s incredibly important to know yourself and what you’re getting into. I cannot ignore the benefit of having two years of experience in this field, so if you’re looking for your first job, I do encourage you to prioritize getting the experience over getting a lifelong job. But as soon as you have the experience, make sure you’re constantly updating the answers to your questions and start the search. I hope you’ve enjoyed this 4-part series and that it’s given you some new tools in your job search. I’ve worked with a lot of developers in job hunting and these are the steps that I’ve determined are the most effective and important things any developer should do in looking for a new job. Let us know in the comments: Have you suffered from imposter syndrome? How did you deal with it? Ready to start your search? Kick it off today at Stack Overflow Jobs.