A step-by-step approach to answering any question in a technical interview
As anyone job-hunting knows, the most stressful part of the whole process is almost certainly the dreaded job interview! If you are pursuing a career in analytics, then the interview process can present its own unique set of trials and tribulations. But as with anything in life, the best thing you can do is to be prepared.
This article will help you with preparation - we are going to explain what to expect from an analytics interview and how you can best prepare.
What Can I Expect From a Job Interview for a Career in Analytics?
For most careers in analytics, companies expect you to be able to code well or at least know the syntax well enough that it’s not a barrier for you day-to-day. Therefore, while these skills will generally be put to the test, it’s not the only skill interviewers will focus on. In addition to the technical portion (i.e., the coding portion), you will likely need to solve a “use case”, which is a problem that they have experienced, a hypothetical problem, or one they are actively trying to solve.
They are testing you not only for your solution to the problem but they expect you to walk them through how you got there.
Steps to Success
1. Focus on Methodology Not on the Code
It is important to note here that they aren’t just looking for your solution. They want to see your approach to the problem and that your technical foundation related to the subject matter is strong. Even with the wrong solution, they could be impressed if you walk them through how you got there.
You need to show them that you understand the methodology and the underlying assumptions that you need to make to reach the solution. Therefore, you need to walk them through the assumptions that you made, and why you made them. For example, what are you assuming about the population of users?
You also must think about and explain the math that underlies your methodology. Think about what could affect the metrics that you are working with in this situation, and communicate that you understand what would cause these changes.
If you can’t see it already, communication is the key variable that will run through all of this advice. In explaining your methodology, you need to show a full grasp of the situation. Explain what you assume about the problem, and what you assume it will take to reach a solution.
2. Be Detail Oriented On The Code But Only When Asked
In a job interview problem, you will often be presented with a piece of code, and be expected to analyze it or correct the mistakes which may solve the problem. This is where it is extremely important to show that you are detail oriented. Before this part, however, you’re most likely focusing on methodology and approach to the question, so refer to tip #1 above first.
You are expected to walk the interviewer through each part of this problem. Look at the syntax and explain to the interviewer what each block of code is achieving. From here, you will be able to come up with a “big picture” of what this code is achieving, and understand what could be added (or removed) to reach a proper solution.
Once you have properly explained the entirety of the code, as well as your approach to the solution, walk the interviewer through what you believe that solution could be.
As you can see, the solution was important, but how you got there was equally important. An interviewer will be much more willing to forgive mistakes if they can see your thought process and see that you are mostly on the right track, with a solid understanding of the methodology involved.
3. Think About Edge Cases
In coding, it is always important to understand the edge cases, and a job interview is no different.
Think about situations where you think the code could break, and communicate that to your interviewer. It is especially helpful if you can relate these edge cases to specific scenarios that they would actually encounter in their business. This is a great opportunity to show not only your coding knowledge, but your understanding of their business.
Then, once you have identified these potential edge cases, suggest ways that you could account for them so that the problems don’t occur. A solution is always easier to reach once you have identified the potential problems clearly. This is your chance to show your interviewer that you are always thinking about potential problem areas, and able to solve them as well.
4. Don’t Accept the Obvious!
In any problem that is presented in an interview, always remember to not accept the obvious answer! If it were obvious, it probably wouldn’t be given to you as a question in a job interview.
That’s why it’s so important to consider the advice above. Consider every detail presented, look for holes in the code, and consider real business edge cases. By communicating all of this, you will likely be able to identify where the problem lies, and from there you can build a solution.
Remember, this is a complex problem that needs solving, otherwise they wouldn’t be showing it to you. If you are struggling at first, just take your time and walk the interviewer through it, they want to see your thought process anyways.
We can’t tell you exactly what problem you will encounter in your job interview. But by considering all the advice above, you can develop a reliable strategy to solving any problem you may encounter.
If you are interviewing for an analytics position that involves coding, the coding aspect should be almost second-nature by that point. The interviewer is more interested in how you break down the problem, how you identify the areas that need work, and how you work toward a solution. They also want to see that you know their business, which means considering specific edge cases and relevant factors that might be relevant to the competitive environment in which they operate.
So there you have it, take your time and be thorough, but most importantly communicate your thought process the entire way. And if you want some extra practice on your coding, check out my article here on the best niche platforms to learn SQL and Python! Good luck!