What should you expect in a data science job interview and how can you prepare for one? We asked a Senior Career Advisor at Metis Data Science Bootcamp, Andrew Savage, to give us some insight into what candidates will experience when they apply to data science jobs. Find out examples of interview questions you might get asked (and what you should do if you don’t know the answer), the soft skills interviewers are looking for, and see Andrew’s favorite online resources to help you ace the data science job interview. Watch the video or read the blog post!
What are the components of a data science job interview?
Generally, the data science job interview involves three different steps:
1. A phone screening with a recruiter, someone from HR, or hiring manager.
- This is a conversation to get to know each other, to understand your background, and talk about projects you've done. It’s also a chance for you as a candidate to understand more about the company, express your interest, and see why the company is a good fit for you.
- Usually 30 minutes to 1 hour long
2. Coding challenge
- Could be a take-home challenge or a live coding challenge where someone watches you code.
- The language usually is your choice, but expect to code in Python or SQL.
- Companies sometimes give you a version of their data set for you to solve a problem. Eg: "Here is information about our users. Find the features that lead to increased viewership, write it out in code, present it to us.”
- Time limits can vary from 1 to 2 hours for a live coding challenge or 24 to 48 hours for a take-home assignment, or they may not give you a limit. In general, no data challenge should take you more than 10 to 15 hours.
3. An onsite interview with a team lead, the data science manager, or a senior data scientist.
- Consists of a mix of technical and behavioral questions, and can include whiteboarding.
- Can be one round or several rounds with a wide variety of people including people from other teams like marketing, product development, sales or engineering
- 2 to 8 hours long. You'll be meeting with so many different people, so onsites can be a full day of interviews, or a collection of one-hour interviews with different people over different days.
Should every data science job interview include a technical portion?
There should always be some sort of technical component that, if nothing else, quizzes your knowledge around technical matters and gets you to explain your thought process. That could mean you actually have to go to a whiteboard to share your code with the hiring manager, or walk through an algorithm. If there's no tech component, I think that is a bit of a red flag. You might want to ask yourself, "Does this company really know what they're looking for and do I match the skill set that they actually need?"
What are some examples of data science job interview questions?
1. A chit-chat question.
- Allows you to connect with your interviewer, talk about yourself, and things that you've done in the past.
- Your answer should be phrased to fit within the context of what the company is trying to achieve, to sell yourself and your ability to solve their problems.
Example: "Tell me an interesting technical problem that you solved.”
- Explain how you approached a technical challenge you solved, what you took into consideration, what methodologies and modeling you used.
- Phrase your answer in a data science context. Talk about a project that is relevant to that company and the position to which you’re applying.
2. Technical knowledge.
- Questions like this are meant as filter questions to determine whether or not your knowledge of data science is legitimate.
- You will be expected to answer quickly and accurately.
Example: “Describe the differences between supervised and unsupervised learning."
- It's one of those benchmark questions – if you don't know it, the interviewer can tell.
- Your answer doesn't have to be a textbook definition; but you need to explain clearly what the differences are between the two types of learning, why one has certain characteristics, and the other has different characteristics.
- Mention experiences you've had working with one versus the other or both.
- It’s important to prepare – you don't want to dance around a question like this.
Does programming language matter? If I learn Python, could I interview for R jobs?
A lot of employers say, "We've been doing a lot of work in R, but if Metis grads know how to do their work in Python, then we are confident that they'll be able to learn R.” If a company says “We need someone who's fluent in R right away,” then the majority of our graduates aren't a great fit. Only those with Masters or PhD-level degrees in a quantitative subject are likely to have that previous R experience.
Over time, it's becoming less and less the case at Metis. Generally, I find that only a very small minority of employers, less than 10%, have a strict “R or nothing” requirement. It was more common two years ago, but lately employers usually like Python and R. Usually there isn't the specific need to know R only.
What if an interviewee doesn’t know the answer to a question?
If you draw a blank and you can't answer, it is totally fine to say, "I don't know." What you don't want to do is just blurt out an answer, because it's one thing to be wrong, but you don't want to be wrong and reckless.
A strategy that I often tell my students is to know the nature of the problem. You may not be totally sure how to phrase the answer, but you can begin your answer with, "I don't know exactly what that is, but my interpretation of what it is you're working with, is ...." Or if you get a question like, "Write this out or solve this for me," you can say, "I'm not totally sure the best way to solve this, but let me write out some ideas that I have and some ways in which I might go about doing this."
If you do that, the interviewer will see that you're going out on a limb, that you’re not totally sure about what's going on, and may be willing to watch you work through your methodology and thought process. They’ll usually give you some bread crumbs if you're not going in the right direction.
Do interviewers expect an applicant to get everything correct in order to get the job?
No. In many situations it’s equal parts technical evaluation and behavioral evaluation. Good interviewers and hiring managers know that you can hire someone who is A+ on the technical side, but may not fit from a cultural or a behavioral standpoint.
In addition to getting the right answer, there are also other things that are important. For example, interviewers want to see if you’re able to explain how you solved a question, how you interact with others in the process of answering your question, how you communicate, and whether your tone is conversational or adversarial.
There is almost always room for less than 100%. There's room for, "She arrived at the wrong answer, but her methodology, her approach was really sound and we understood where she was coming from." Sometimes that's more important than acing the tests.
What are the non-technical skills, and the culture-fit types of skills that interviewers are looking for?
Yes, companies are looking to hire talented data scientists, but interviewers are also looking to hire people who they will enjoy working with. It's not simply a technical meritocratic methodology, although technical prowess and the ability to solve problems is super important. Those attributes are:
1. Curiosity and interest.
- Employers want to see that you have a legitimate curiosity around data science, and you’re really interested in solving different data science problems.
- People who are passionate, who really care, and are really curious about why something is working or not working the way it's supposed to, will have more success than people who are just doing it to go through the motions and do something that they know they're good at.
- Every two years, you’ll need to add something to your skill set. Languages change, platforms change, ways of doing things and working with data changes, so you'll need to keep up. Your company may give you tools and resources to do that, or it might be expected of you.
2. Communicating your thought process is super important.
- Even though data science touches on statistics and coding, it's more than that. It's solving business problems, getting people to buy into why you're doing what you're doing, and communicating to technical and nontechnical audiences. So being able to see the forest from the trees and communicate what's going on in the grander scheme is super important.
- You need to be able to communicate what you’ve done. If you ever ship buggy code, or something goes wrong, a company manager wants to know that you can use your communication skills to walk them through what happened so they can fix the problem.
3. Problem-solving skills
- There are many different types of data and many types of modeling methodologies that you could apply, so you want to be able to showcase to your interviewer that you have relevant problem-solving skills.
- If you’re interviewing with Uber, you don’t need to say, "I've worked with transportation data before. I know exactly how to solve your problems." That's nice and would be helpful, but it is more about the methodology and the types of problems that you've solved before.
- Make an analogy. Perhaps you did a project forecasting energy prices based on variable supply and demand for energy consumption. Looking at that topic, you might think that the problem will only be interesting for GE or SunEdison, or other utility companies; but the nature of the problem is a supply-demand question. Uber could find that extraordinarily interesting and relevant with their surge pricing model – they're trying to solve a supply and demand problem. So just because you haven’t worked with data from that company or that industry, doesn’t mean you haven’t solved a relevant type of problem.
- Think about how you've solved things before, what types of situations and problems you've encountered, and make that link.
4. Personability is super important.
- The ability to connect to your company, get trust and buy-in, especially in a data science role, is immeasurably important.
- You have to uncover the nature of a problem with the product people, the engineering team, the business team, then listen to them and communicate your results to them.
- Have a flexible mindset, whom others enjoy being around to talk to, and bounce ideas off. You can be incredibly skilled technically, but it might be painful for other people to interact with you.
How can people prepare for data science interviews to make sure they get the job?
The way we prepare Metis students is multifaceted. Yes, we are looking for a baseline understanding in quantitative subjects like linear algebra, statistics, and proficiency in Python, but we're also trying to expand students’ knowledge of topics that we find are most relevant, and that companies are hiring for.
1. Project-based learning and portfolio development
- We focus on applied learning so students can develop projects from end to end and touch on things like exploratory data analysis, regression models, classification models, machine learning, natural language processing, and big data.
- When they graduate, Metis students have a portfolio of projects that touch on things that they're both interested in, and that have a wide variety of business applications, and cover everything from machine learning to other types of modeling. That gives them the best chance possible when they actually go on an interview, to meet a company, or a team of data scientists who are doing something that they have already done.
2. Exposure to networks and industry professionals
- For data science – and all jobs in any field – being able to leverage an existing group of people who can make introductions for you, or referrals, makes all the difference.
- Companies I talk to, especially in San Francisco, will post a job online and get 500 to 900 applications in the first couple of days. There is no great way to filter through so many applications, so it’s important for applicants to get a broader exposure to people who are decision makers.
- At Metis we lend students our network, and give them tools to build their own networks. We bring in industry professionals to meet with students to broaden that opportunity.
3. Workshops to review job search best practices
- We do a number of other things like workshops to cover technical and non-technical matters, mock interviewing, so students get the foundation of how to explain the work that they've done, and how to approach certain common technical problems and questions that get asked in interviews.
What’s your advice to employers who are hiring data science bootcamp grads?
Be open-minded about who might graduate from a data science bootcamp. At Metis, our students range in age from 19 to 60 years old. Some have PhDs in statistics or computer science and are looking to get into data science, while some have no Bachelor’s degree at all. We do a really thorough job of vetting students, and that's not restrictive with regards to age, background, or level of education. So, keep an open mind, especially towards people who are mid-career changers.
During the interview, please focus on what is actually essential for your employees to perform on the job. A lot of people don't have a lot of background in how to conduct an interview properly and they may ask “pie in the sky” impossible questions to see how people react and squirm and solve something that is completely irrelevant to the job. Make the interview practical.
What are your favorite resources to prepare for a data science job interview?
- Gives an in-depth overview of how to work with SQL databases, which oftentimes is a focus on data science interviews. The majority of data science jobs require SQL knowledge so ModeAnalytics is a fantastic resource.
- A gamified version of different quizzes and questions that have been asked at companies in real data science interviews at companies like Google and Facebook. You get a comprehensive overview of what's going on, plus it covers all the bases of data science machine learning.
3. Chris Albon
- Chris Albon is very well known in the data science community and is a great resource for entry-level data scientists. His website has a never-ending list of materials which cover machine learning, linear algebra, and statistical modeling of various types. He also has handy machine learning flashcards.
What is jQuery: An Intro for Beginners
Should you learn jQuery? We look at the debate around jQuery and what jobs need jQuery.
What is Express? A Guide for Beginners
Git and GitHub: A Guide for Beginners
Turing School instructor David explains Git, GitHub, version control, and repositories for beginners