Some of you may remember that I had started a series of blog posts titled "What I have learned about landing a job in tech" to share my personal experience about interviewing with top tech companies. I promised to write four parts but actually published only two: About the importance of differentiating yourself and being a marathon runner. Well, it is a shame that it was 1.5 years ago and I am yet to complete the series. Better late than never, and here we are with Part 3!

In this part, I will be discussing how I think one should interpret an interview failure (and indirectly, a success). I find this topic important because any negative interview outcome used to overwhelm me, shake my self-esteem, and prevent taking the right lessons that would help me improve. In retrospect, the reverse was also true: I probably overestimated my success in cases of positive outcomes. I am hoping to convey my learnings, not only from my many failures (see the second post in the series to get a sense of how many) and some successes, but also from my experience as an interviewer over the past several years at different companies.

A necessary disclaimer before I start: What you will read in this post are completely my personal views and not (necessarily) those of my employers (current or previous). Fortunately, companies and organizations go to incredible lengths to ensure their standards are reflected in the hiring process and the outcome is a collective decision of a diverse group of individuals. So, even if my take is incorrect in some respects, there are always a bunch of other people along with a concrete process to correct me when it comes to specific decisions.

After this long of an introduction, here are what you will read in this post:

  • Hiring is about the finding "right fit."
  • Understanding interviewers' objectives.
  • The interview is an imperfect process.
  • Putting things into perspective and taking action.

With that, let's dive in!

Hiring is about finding the "right fit." Really.

"We have decided to move ahead with another candidate who we feel is a better fit for this particular role." For long, I felt pretty annoyed by the "politically correct" and "kind" narrative of the "right fit." Back then, I was taking those outcomes as comprehensive assessments of my entire set of skills and accomplishments and my response to such sentences in my mind was more like "yeah, tell me like it is. I am not good enough!" Oh boy, was I wrong!

Sitting on the other side of the interview table over the past several years has given me the chance to review many resumes and meet many candidates, all of whom had nothing but a lot of hard work in their past and amazing portfolios! Great degrees, online courses, personal projects, past experience… None of us should underestimate the effort that goes into each of those lines on our resumes!

Yet, without a doubt, a rejection is a disappointment. One cannot help but ask "why"… "What happened?" What happens is the following:

Interviewers reach a conclusion that another candidate is a better fit for the role.

This statement may sound trivial, yet it is not, and it is important to unpack it.

  • A hiring process is about a particular role at a particular company (and often for a particular team). And there is a certain set of requirements that come with it specific to that role. If a candidate is not the right fit for the role, it does not mean that person is not successful, not talented, not accomplished, not competent, etc. It simply means that the role requires different types of strengths than the candidate might have. For example, a solutions engineer role might focus on communication skills while a specific back-end role might focus on technical depth. Not to say that the former does not require depth and the latter does not require communication skills. It is just that their weights could be different in the evaluation process for those two roles, and it may be the case that the candidate shines in one as opposed to the other.
  • Unfortunately, what makes one the "right fit" for the role is not always related to technical or soft skills either. For example, it could be the case that an internal candidate (someone who already works in another team at the company) might have an edge over an external one for that specific role due to their familiarity with the company's tools, culture, customers, etc. This reminds me of my application with Apple early in my career for a supply chain optimization role. It was as if I wrote the job description for myself, which described the exact past experience and set of technical skills I had at the time. At least it was my reading of it. Despite my numerous efforts, I did not even get a call. Who knows what factors were at play for that specific role.
  • When there are multiple candidates who satisfy the criteria for the role, there needs to be some ranking. Therefore, if a candidate does not get the offer, it does not necessarily mean that they are not qualified or not the right fit for the job. They may very well be! It could be just the case that someone else was able to impress the interviewers a bit more. (More on this in the next section).
  • The outcome is just a conclusion of a group of human beings, not some undeniable truth. Humans are subjective in nature and the decision could be simply wrong. (More on this in the third section).

As an interviewer, there were many cases when I wished we could open a role for a specific candidate, who, unfortunately, was not the best match for what we were looking for at that moment. Similarly, many instances when I wished we had more headcount to hire more than one of our candidates. Having said that, in all those cases, I felt comfortable that those candidates would land great jobs with some other team/company anyway because of their great work and background.

Understanding interviewers' objectives

Let's say there is a role you are really interested in and focused so hard to get an offer for. Imagine that as you exit the building at the end of the interview day (or close the Teams/Zoom session, as is the case nowadays), an oracle appears in front of you and tells you that you are the most qualified candidate and the best fit for the role. Now you are confident that you will get the job. Several days later, you get a call from your recruiter, and… those words… "another candidate who is a better fit…"

In your eyes, it is obvious that the interviewers made a mistake. Did they, though? Or, how big of a mistake was it?

Now, let's hypothesize that the only way to truly find the best candidate in the pool is to have the top three as probationary employees over a 90-day period, and only then the company can derisk missing the best match. Well, this is probably impractical and costly for most situations and what makes sense is to take the risk of slightly being wrong in the decision. As a result, as much as companies would want, the offer may not always go to the candidate who is the best fit for the role. Or, to put it less dramatically, it is a success for the company to hire one of the good fits for the role in the candidate pool, and some of the other candidates that don't get the offer are perhaps equally right fits. So, if a candidate gets rejected, there is a chance that it was a close call, but the hiring mission was accomplished.

Now, the situation above was about failing to identify the best (or a good) candidate, i.e., a false negative. Another way the hiring decision could go wrong is to hire someone who is not a good fit, i.e., a false positive. This is usually considered a bigger risk because such an outcome would be bad for two parties: The team/company and the candidate (now the new hire). That would be a lot of waste of resources and reduced morale on both sides. In fact, in many cases, interviewers try to understand if the candidate would be happy in the role if hired. For example, if the candidate expressed their passion for publishing academic papers in their job and did not realize that it is not a focus for the role, the interviewers might conclude that, as good as the candidate is, their interests don't match the role. Or, if it is a senior role and the candidate does not have enough experience, the expectations after hiring might overwhelm the candidate. Therefore, it is an important goal to avoid false positives in the outcome of an interview.

Now, as you may remember from your stats classes, striving to avoid false positives will come at the cost of increased false negatives. In simpler terms, as more candidates get rejected to be on the safe side, those rejections will have an increased number of good candidates. (But again, as long as the team identifies a comparably good candidate, the mission is accomplished.)

My apologies if I bored you with my efforts to tie the discussion to stats concepts (and unfortunately it is not over yet). But all I am trying to say is that it is a perfectly plausible (although not pleasing) outcome to get rejected from a role that you are a great fit for, and it is not necessarily anyone's fault.

The interview is an imperfect process

If you think about what an interview outcome is, in statistics terms, it is an estimation of a candidate's fitness for the role based on a limited number of interactions (a sample) with the individual. When statistics are at play, it means there is noise, luck, false negatives, false positives, as mentioned already. It also means that if you repeat the interview (experiment) with different (or same) interviewers, questions, time of the day, day of the week, etc., there is a chance that the outcome will be different.

Just think about (some of) the variables at play in an interview:

  • The set of questions a candidate gets asked among a vast number of possible questions that can be asked. As we human beings have limited knowledge and experience, it is always possible to be dealt a bad hand in regards to interview questions even on topics one might be extremely familiar with.
  • The sequence of the questions/interviewers you get.
  • Your mood, focus, morale, health situation.
  • The other candidates in the loop.
  • The other candidates' mood, focus, morale, health situations.
  • The other offers the other candidates in the loop have.
  • Your interviewers' mood, focus, morale, health situations.
  • Whether a fire alarm will go off during your interview and you will have to evacuate the building. Might sound like an odd example, but this actually happened to me during an interview with Amazon. We continued the session and I had to solve non-linear optimization problems on the curbside of Seattle streets. (For those who are wondering, I got the offer at the end. I don't know if the fire alarm played a role :)
  • And many more things you can (or cannot) think of.

And at the end, all this evaluation and ranking and conclusions are made by humans, who are, knowingly and unknowingly, subjective creatures in their decision-making (despite the best efforts against it); and their decision might be simply incorrect. If you want to learn how subjective we all are, check out Daniel Kahneman's famous book "Noise."

As a side note here: One way to eliminate the noise in the process is to standardize the set of questions that are asked, as some companies do. For example, for software engineering roles, sticking to Leetcode-like questions. There is a lot of merit to such a standardization, namely, they level the field to a great extent for candidates. But there are also downsides: There is only so much overlap between being a great software engineer and a Leetcode master.

This section can go on with more examples of how the interview process is imperfect. But I feel I need to clarify my stance before I wrap up here: I am not in the camp of "the system is broken." Quite the opposite: I think interview loops work quite well for the most part, as a result of deliberate efforts by companies. It is just that, like any other process in life, it has shortcomings and it is important to recognize that.

Putting things into perspective and taking action

Much of my presentation so far aimed to give you a broader perspective about interviews than simply deriving misery out of a negative outcome or an absolute triumph out of a positive, as I often used to do. That is not to say that there is no lesson to learn in the former case or no success to celebrate in the latter. There absolutely is. And next, I will give my two cents about how to approach the process and those outcomes.

  • Be deliberate about how you are positioning yourself in the market. For example, although there are a lot of overlaps between a data scientist, a machine learning engineer, and a machine learning researcher, those are not the same roles. You should identify where your interests and strengths lie, understand the nuances between similar roles, work towards sharpening your skills for your target role, and clearly position yourself in your resume and applications.
  • Always ask for feedback after an interview. You might be surprised how your perception of what went well/wrong could be so different than what your interviewers thought. They are often not the same! It could be tricky to get this feedback, though. Not all companies are willing to disclose too many details after a negative outcome. Try to demonstrate that you are genuinely trying to improve yourself with the feedback. And, if the outcome is positive, it might weaken your position in negotiations to keep asking about what you did not do well. Try to get the feedback after negotiations are finalized. Also, having your resume reviewed by your network and going through mock interviews are usually great sources of feedback!
  • Don't feel bad about applying for many roles and not hearing back or not being invited to an interview or getting rejected. Remember the chance factor in the process.
  • Look for patterns in what is going well and not so well to tell the signal apart from the noise. If you happen to have answered a question about, say, hypothesis testing, it is not necessarily a sign that you should stop reviewing that material. Also, just because you missed a question on a particular topic, don't immediately lose your confidence in what you know.
  • Believe in yourself and keep up the hard work! The path to success is always challenging and things are not always in our hands. But rest assured that hard work always pays off!

I hope you enjoyed this post and found it helpful. Thanks for reading.