Data science interviews aren’t easy. I know this first hand. I’ve done more than my fair share of them. Through this exciting and somewhat (at times, very) painful process, I've compiled a ton of useful resources that helped me prepare for and eventually pass data science interviews.
Originally on Github, I decided to reformat the links and republish them here to make things easier on you. With this list at your disposal, you should have more than enough reading and practice material for the next time you hunker down and do some interview prep.
Let's start with links to interview questions that cover data science as a whole. Specifically, I highly recommend checking out the first few links related to 120 Data Science Interview Questions. Drop a couple bucks on the eBook or just browse the answers for free on Quora. This was my favorite resource for testing myself with realistic, challenging questions.
- 120 Data Science Interview Questions
- Answers to 120 Data Science Interview Questions
- Answers to 120 Data Science Interview Questions Pt.2
- The Data Science Interview
- 109 Commonly Asked Data Science Interview Questions
- Data Science Interview Questions and Answers
- 3 Types of Data Science Interview Questions
- Comprehensive Data Science & Machine Learning Interview Guide
- Notes and Technical Questions from Interviewing as a Data Scientist
- How to Hire a Great Data Scientist
Algorithmic Programming & Python
Even Data Scientists cannot escape the dreaded algorithmic coding interview. In my experience, this isn't always the case, but odds are you'll be asked to work through something similar to an easy or medium question on LeetCode or HackerRank.
As far as language goes, most companies will let you use whatever you prefer, even if the roles are typically targeted at Python and R programmers. Regardless of language, I would recommend investing in Cracking the Coding Interview. The book is a fantastic resource and will be helpful, even if you aren't using Java.
- Cracking the Coding Interview
- Stacks and Queues in Python
- Time Complexity in Python
- Preparing for Programming Interviews with Python
- Coding Interview University
- Programming Interview Tips
- Google Python Style Guide
- Algorithms in Python
- Intro to Classes and Objects in Python
- The Coding Interview
- Problem Solving with Data Structures & Algorithms in Python
- Programming Interview Questions
- Python Tricks and Tips
- Awesome Interview Questions
Statistics & Probability
Statistics is crucial for Data Scientists and is reflected as such in interviews. I had many interviews begin by seeing if I can explain a common statistics or probability concept in simple and concise terms.
As positions get more experienced, I suspect this happens less and less, as traditional statistical questions begin to take the form of more practical scenarios.
- Basics of Probability for Data Science
- William Chen Probability Cheatsheet
- 40 Questions on Probability for Data Science Interviews
- Common Probability Distributions
- Probability and Statistics for DS Medium Series
Data Manipulation & SQL
Once the interviewer knows that you can think-through problems and code effectively, chances are that you’ll move onto some more data science specific applications. This will likely be an assessment using Python, R, or SQL that involves you digging up data in a specific format, and making an informed statement about it.
- Introduction to SQL Mode Tutorial
- How to Ace Data Science Interviews: SQL
- How to Write Better Queries
- Awesome Interviews SQL
- 10 Frequently Asked SQL Questions
- 45 Essential SQL Interview Questions
- More SQL Exercises
- Data School Pandas Series
- Intro to Pandas Data Strutures
- Excel Tasks in Pandas
- More Pandas Exercises
You might not be using machine learning in your day-to-day, but it's still a virtual lock in the data science interview. Whether it's a conceptual question regarding tradeoffs in models or a take home assignment with a dataset attached, you'll have to know your stuff. I’ve seen it both ways, so you’ve got to be prepared for either.
Specifically, check out the Machine Learning Flashcards below, they’re only a couple bucks and were my favorite way to quiz myself on common conceptual questions.
- A Machine Learning Course with Python
- The Applied Machine Learning Process
- Springboard 41 Essential Machine Learning Questions
- Data School 15 Hours of Machine Learning Videos
- Difference Between Boosting and Bagging
- Comprehensive Guide to Ensemble Learning
- Kaggle Data Science Glossary
- Machine Learning Interview Checklist Udacity
- Google Machine Learning Glossary
- 100 Days of ML Code Infographics
- Machine Learning for Dummies Algorithm Overview
- ML Algorithm Pros and Cons
- Advantages of Different Classification Algorithms
- The Machine Learning Interview
Product & Experimentation
This won’t be covered in every single data science interview, but for product-facing roles, it's a must. Most interviews at consumer companies will have at least one section solely dedicated to product thinking. This typically lends itself to an A/B testing question of some sort.
Make sure your familiar with the concepts and statistical background necessary in order to be prepared when it comes up. If you have time to spare, I took the free online course by Udacity and overall, it was pretty good.
- Experiments at Airbnb
- When Should A/B Testing Not Be Trusted?
- A/B Testing Interview Questions
- Udacity A/B Testing Course
- Summery of Udacity A/B Testing Course
- Frequently Asked Questions about A/B Testing
- How Do You Set Metrics?
- Metrics vs. Experience
- How Not to Run an A/B Test
- 12 Guidelines for A/B Tests
- A/B Testing at Stack Overflow
- Type I vs. Type II Errors Simplified
- Case Study: Pay as You Go
- 27 Metrics Used at Pinterest
- 70 Resources to Get Started With A/B Testing
Lastly, I wanted to call out all of the posts related to data science jobs and interviewing that I read over and over again. These helped me understand, not only how to prepare, but what to expect as well. If you only check out one section here, this is the one to focus on. This is the layer that sits on top of all the technical skills and application. Don’t overlook it.
- Advice for Applying to Data Science Jobs
- The Two Sides of Getting a Job as a Data Scientist
- Doing Data Science at Twitter
- What It's Like to Be on the Data Science Job Market
- Crushed It! Landing a Data Science Job
- Hiring a Data Scientist
- Questions I'm Asking in Interviews
- How Do I Get My First Job in Data Science?
- How Do I Prepare for a Data Scientist Interview?
- How Do I Prepare for a Phone Interview for a Data Scientist Position?
- Data Science Interview Guide
- How to Land a Data Scientist Job at Your Dream Company
- Red Flags in Data Science Interviews
- Advice on Building Data Portfolio Projects
- How to Build a Compelling Data Science Portfolio & Resume
- The Data Science Career Guide
- Mastering the Data Science Interview Loop
I hope you find these resources useful during your next interview or job search. I know I did. Interviews are hard, but there is a silver lining in that they serve as a forcing function for learning.
All of the above articles, videos, and guides helped me essentially self-teach myself data science. Thanks to others sharing what they learned, I was able to fail, learn from it, and then do it over again until I landed a job that I love. With the right mindset and resources, you can do the same. I wish you the best of luck.