Mastering the Technical Interview — pt. 1
When interviewing for a software engineering position, you have to know how to code. I would argue that you should also know the psychology of interviewing.
One concept that is relevant to technical interviews is confirmation bias.
As per Wikipedia:
the tendency to search for, interpret, favor, and recall information in a way that confirms one’s preexisting beliefs or hypotheses, while giving disproportionately less consideration to alternative possibilities.
Confirmation bias makes us interpret events in different ways according to our experiences and beliefs. How does this relate to technical interviews, you ask? I’ll explain, but first let me give an example.
Just consider this tweet by Newt Gingrich. It was in response to the news that FBI director James Comey would not be prosecuting Hillary Clinton after reviewing a new set of emails. When I received the same news, my reaction was quite different — that of relief that she was justly exonerated. Same news story. Two vastly different interpretations. The same thing can happen in technical interviews, either to your advantage or disadvantage.
People have opinions about what makes a qualified software engineer. Many of these biases are unfair — that a good engineer should have X years of experience, or go to Y school, or have Z appearance. Usually these beliefs are because the person him or herself has attributes X-Y-Z. This is also how an absence of diversity becomes a vicious cycle (the people hiring continue the cycle).
A technical interview really isn’t about X, or Y, or Z above. It’s about how you code and solve problems. But be careful. If you happen to not fit into X-Y-Z and somehow signal that the interviewer’s bias is justified, you may be penalized.
The bias that I often run up against is that I learned coding through a bootcamp, instead of a 4-year university. I’ve been harshly criticized for even writing about programming because of it. This information inevitably surfaces during an interview when I am asked about my resume. ** Note: This doesn’t happen in Google software engineering interviews, which might make work history biases less strong **
By revealing that I learned programming through a bootcamp, I am invoking the unconscious bias in the interviewer’s mind. Many people think that bootcamp grads are less qualified than engineers with 4-year degrees. Don’t get me wrong: I do try to talk about my professional achievements and hope that I’ll be judged primarily on those, along with my coding ability.
When interviewers ask me to solve coding problems on a whiteboard, I’m able to solve them correctly most of the time. I get nervous in the process, and sometimes express indecision or confusion while solving the problem. But in spite of my nervousness, I’m confident that my answers are good (I’ve confirmed with senior engineers), and I’m able to speak to their complexity.
But after interviewing at many companies and discussing with other engineers, I am suspicious that there is something more at play. I’m solving the problems correctly, but not getting offers after the interviews. And I think it’s because of the anxiety and uncertainty I convey in the problem solving process. Maybe the lack of confidence confirms the bias that is already at play, and I lose points.
I’ve taken the attitude that from here on in, it’s not enough to solve the problem correctly. I have to be cool and collected, and I need to hide whatever mental processes may be making me feel nervous or unsure. I have to exude confidence, even if my mind is racing in different directions.
When I consider this, I think about the engineers that defend white boarding interviews with statements such as “It helps us see how you solve problems.” Solving problems isn’t about walking up to a board and writing your answer with a stone face. It’s about working through the problem and trying different approaches, eventually finding the best one for the time allotted.
From talking about the interview process with people of color and women, I’m fairly certain that these issues exist for them as well. If an interviewer’s (or society’s) confirmation bias is against you for whatever reason, you have to be better than good. You have be strong and not let self-doubt rise to the surface. Once the doubt seeps through (and we all have self-doubt), the interviewer may begin to confirm the bias, however unconsciously.
So next time you go to a technical interview, prepare yourself mentally. Put yourself in the interviewer’s shoes, and ask yourself, “What confirmation biases would I have?” If there are any, make sure that you strive to remove any source of doubt of your abilities. I used to think it was just about solving the problems, but I’m convinced that’s not all there is. It’s not a perfect system, and it’s not always fair, but it’s not going away any time soon. So let’s beat it at its own game.
If you enjoyed this article, please click “like.” You can also follow me on Twitter as @tomgoldenberg.