Tips for technical interviewing

Two people fencing.
Photo by Micaela Parente on Unsplash

The dreaded technical interview. Does anything else strike such fear into the heart of the job-seeker? When I started my data science job search, I was downright terrified of technical interviews. They seemed like such minefields, packed with opportunities to look like a dunce in front of someone who could give me a job. Now that I’ve been through a handful of them (some passed, some failed), I have some perspective on how to approach them with less dread and more positivity.

First of all, I want to thank all the noble souls who have conducted my technical interviews. It can’t be easy to navigate between blurting out solutions and withholding reasonable assistance, or between probing to assess someone’s skill level and just antagonizing them. All of my technical interviews have been respectful and professional, and some have even been friendly and fun! I hope your experience will be just as lucky.

For a little context, here’s a list of the technical or semi-technical interviews I have encountered so far:

  • Explaining one of my own data science projects, including answering questions about technical choices I made and why;
  • Explaining the statistical tests I would use to solve a particular business problem;
  • Answering general questions about statistical concepts, then working on a Python programming problem;
  • Coding solutions to basic Python “brainteasers” (like LeetCode or HackerRank problems;
  • Writing a series of increasingly complex queries in SQL;
  • Extracting and analyzing data from a JSON file using base Python;
  • Doing an open-ended data analysis project, presenting my results, and explaining the techniques I used and the choices I made;
  • Pair-programming through a series of data analysis questions in Python;
  • Pair-programming an algorithm to calculate and evaluate the results of A/B tests;
  • Talking through an analytical approach to a business case (what types of data I would want, what type of model I would use, how I would evaluate it, etc.).

All of these experiences taught me something about navigating a technical interview with grace, whether they went well or poorly. Plus, I was lucky enough to have a mock technical interview before any of these. I felt like I did a pretty terrible job in the mock interview, which was actually great preparation for the real thing. Sometimes you need to fail a bit to take the sting out of failing.

Now on to the advice!

Tip 1: Positive vibes

Rainbow over a street light.
Photo by Zoey Tian on Unsplash

Technical interviews are stressful—you can’t change that! But you can exercise a little control over how your mind and body are responding to that stress in the moment. Stress is going to make it harder to think and articulate your thoughts, so take some immediate steps to mitigate it.

Start off smiling. Act like you’re having a lovely, positive experience right from the beginning. When they say, “Are you ready to begin?” say, “Yes, absolutely!” with a smile on your face instead of just a matter-of-fact “Yes.” That smile isn’t for them, it’s for you! Act like you’re about to have a great time and fill the anxious moment before the first question with positivity. I know it seems a little silly, but I find it helps me manage the nervousness that would cloud my thinking right off the bat.

The interviewer is your friend. They may not agree, but that doesn’t mean you shouldn’t treat them like they’re on your side. Don’t think of them as an interrogator, but rather as someone trying to give you a chance to show what you know. This may make you feel more comfortable asking questions or explaining your ideas.

And this brings us to…

Tip 2: Talk it out

A bird with its beak open.
Photo by Jan Meeus on Unsplash

Now is the time to put on your chatty hat. Not 100% sure that you understand the question? Ask for clarification! Have an answer but can’t put your finger on a technical term? Talk your way around the missing word so your interviewer will at least know what you mean. They can’t read your mind, so it’s up to you to get your thoughts out there.

Of course you should stick to answering the question that was asked, but you may also find opportunities to show other things you know, too. This can include things you don’t even know that much about but are interested in exploring. For instance, I was recently asked how I would interpret the results of a multiple linear regression. After explaining what I knew about coefficients and how they show correlations between features and the target, I added that we could move beyond that and use causal inference to determine which of the features might be causing the variability in the target.

Do I know how to set up a causal experiment? No! And I explained what I could while acknowledging the limits of my knowledge. But that was an opportunity to show that I’m growing, curious, and on the lookout for tools to help solve business problems, even if I’m not an expert in using those tools yet.

And this brings us to…

Tip 3: Come close

Person does math on a whiteboard.
Photo by ThisisEngineering RAEng on Unsplash

Remember math class in high school, where your teacher was always imploring you to “show your work?” They wanted to see your attempt at solving a problem so they could award partial credit if you got some of the process right while ending up at the wrong answer. Partial credit is often available in technical interviews, too, so it’s very important to show what you know and try to come close to the ideal answer, even when you know you’re not going to nail it.

For instance, during a recent technical interview, I was working through an algorithm to construct numeric palindromes. I was able to solve for a few cases, but I was having a little trouble making my solution generalizable. With a little nudge in the right direction from my interviewer, I was able to draft a programmatic solution that would make my algorithm work, even though it wouldn’t be very efficient. And that was close enough! My interviewer reminded me that there was actually a pretty simple mathematical way to get to the same answer (combinatorics strikes again!), but he acknowledged that my solution would at least get the job done. I knew my solution probably wasn’t the best one, but I came as close as I could and passed the interview.

And in conclusion…

Remember that there’s an element of luck to technical interviewing, too. No matter how well prepared you are intellectually and psychologically, you could still get a question that throws you off. And that’s okay! Do what you can to stay positive, communicate, and come close to an ideal solution, and hopefully things will work out in your favor.