No programmer I know likes the technical interview. But it’s an industry standard. As with all standards that we don’t like, we live with it. In living with it, we try to circumvent the impossible.
Businesses have been built around the impossible. Many websites charge a fortune to prepare you for that technical interview. They come in so many flavors they make me dizzy. But when you stayed up every day for months to prepare for that eventual interview, then see that interviewer’s unimpressed expression as you “blank out” on an obvious answer you just “had” to know … you know you are done. In five minutes, you will be shaking hands with the interviewer, walked to the elevator, and sent back to where you came from. There will be no second rounds, third rounds, or the salary negotiation round.
To make matters worse, once you fail one technical interview, your mindset deteriorates. If you have other interviews lined up in the same week, you are pretty much done for them too. You know you don’t have enough time to recover from this failure emotionally. You just pray that the questions on the other interviews will be easy.
Say it with me. It’s bullshit. Good. Then, do it again. It’s bullshit. Good. Immediately after the interview, you need to vent. I mean, come on. The questions you failed were completely irrelevant questions about math and algorithms that you would never use in real life. If they are so eager to make you answer questions that anyone will fail, they must have already hired someone else. They’ve wasted your time as well as theirs.
Work out, drink, climb a mountain, or meditate. We all have our preferences. Just don’t drink too much. One beer and a vent session with a friend is enough. Follow it up with a nice video gaming session with your buddy. While you are at it, ignore that phone call from your family asking about your interview. You are not ready to talk about it with them yet. It’s best to deflect.
After you’ve processed, it’s probably best to Google the answer that you missed. If you are like me, I usually do it right after the interview because I just “have” to know. But you don’t have to do it right away if you are still processing your disappointment.
While you are at it, figure out if this question is legitimate. If the interviewer is just setting you up for failure by giving you an irrelevant question, then disregard it, the interviewers, and the company. You probably don’t want to work for them anyway.
This is the time to set up a dinner date with the significant other who always made you feel special. Instead of venting your frustrations to your significant other, make them feel special, and you will reap the rewards too.
If you don’t have such a person in your life, call up a family member, a friend, anyone who can make you feel special. Ask that they give you some nurturing. Even a social media post can gather some likes that will make you feel good.
Once you have processed your disappointment, it’s good to work on any client project, personal project, or open-source project that you have been putting off due to having to prepare for your interview.
These projects allow your career to progress by teaching you new skills or building new relationships. Do them for your own learning experiences, but most of all do them to feel a connection to the real world of software projects. These skills and connections can be more valuable in the long run than the ones you gain at a full-time job.
Often, what makes me feel good and snap out of a funk is learning something new. Adding line items to your résumé is always great.
It’s also good to figure out a complex concept that you have always wondered about but had no time to study. Just Google it and figure it out. It will make you feel good.
What you missed is not a reflection of all your skills. Keep learning and adding to your résumé.
When I work on projects, I always make a list of interview questions. Our breadth of knowledge can be very large. This is how to keep track of important details that you may not think about day to day. If you don’t have that list of questions, start building one today. If you know the technology inside and out, prove that to yourself on a sheet of paper by listing everything that you think is important.
Pretend to be the interviewer for technologies that you know. Sometimes this is all it takes to see that an “impossible technical question” had some merits in the real world.
One of the back door strategies that I use in technical interviews when I don’t know the answer is to ask the interviewer, “I don’t know the answer to this question. But I’m going to try to figure out the answer from what I know. Is it okay if I talk out the process with you?”
If the interviewer says yes, you can pull out a sheet of paper, make notes, and work things out. This works well for trick questions. Often, if you talk it through with the interviewer, your interviewer has additional opportunities to ask you questions during the process, and you have chances to give answers that are close to what they are looking for.
It’s also easier to spot the trick in a trick question. Your interviewer might simply want to see your process of handling an impossible task. The process and the ways of thinking are more important to the interviewer than the answer.
It’s good to make a list of all the back door strategies you can use for each type of interview questions that you may not be able to answer.
For instance, I’ve told the interviewer that I would Google and read research papers if I didn’t know the answer to something. Then, I follow up with a real-life example of this happening at my previous workplace when dealing with an impossible task.
You may not think this matters. But, sometimes, interviewers just want to see how proactive you would be to try to solve the impossible problem.
Failing a technical interview should not be the end of the world. Even if you failed an interview at the company you want to work for, you should always get back on the saddle after you have processed your failure and learned from it.
There are many technology companies to work for. If you fail one interview for a large technology company, it doesn’t mean you won’t be called to interview again for the same company in a different role.
It’s much more important to keep trying in the face of failure. Interviewers look for this trait in a good programmer. Most people I know would prefer to hire someone who has dealt with failures than one who hasn’t.
In life, having a “winning” mindset is all about being optimistic. Yes, you are hitting your credit card limit on your living expenses even when you are bunking with four roommates. The prospect of moving back to your parents’ house if you don’t ace the next interview is not appealing. Being a remote developer doesn’t appeal to you.
I know there are bad circumstances. But you still have to look up. Because, in the face of difficulty, that is all you have: your mind. You have to look up even when looking down is infinitely easier.
Good luck on your next technical interview. In the grand scope of things, they are just technical interviews. They are tests that someone designed to rate your skills under certain testing conditions. If you didn’t perform well on this one, maybe the conditions were not right, the questions were impossible to answer, and you didn’t have time to prepare.
Just go back, learn from it, and prepare for your next interview.
There’s always that next interview.