Data-Science-Interview-Resources
Update : Drawing from extensive experience in interviews over the past few years, I recently decided to launch a dedicated channel to help individuals excel in Data Science. My goal is to create a comprehensive resource for anyone looking to revisit the basics before an upcoming interview or master the skills and in-depth knowledge required for both succeeding in Data Science interviews and applying Data Science in practice. This channel aims to provide a clear understanding of various techniques used on a day-to-day basis, covering a vast range of Machine Learning topics. Feel free to explore it here :
First of all, thanks for visiting this repo, congratulations on making a great career choice, I aim to help you land an amazing Data Science job that you have been dreaming for, by sharing my experience, interviewing heavily at both large product-based companies and fast-growing startups, hope you find it useful.
With an increase in demand for so many Data Scientists, it's really hard to successfully get screened and accepted for an interview. In this repo, I include everything from getting successfully screened and rocking that interview to land that amazing position, make sure to nail it with the following resources.
Every Resource I list here is personally verified by me and most of them I have used personally, which have helped me a lot.
Word of Caution: Data Science/Machine Learning has a very big domain and there are a lot of things to learn. This by no means is an exhaustive list and is just for helping you out if you are struggling to find some good resources to start your preparation. However, I try to cover and update this frequently and my goal is to cover and unify everything into one resource that you can use to rock those interviews!
Please leave a star if you appreciate the effort.
Note: For contribution, refer Contribution.md
How to get an interview ?
-
First and foremost, develop the necessary skills and be sound with the fundamentals, these are some of the horizons you should be extremely comfortable with -
- Business Understanding(this is extremely critical across all seniority levels, but specifically for people with more than 3 years of experience)
- SQL and Databases(very crucial)
- Programming Skills(preferably in Python, if you know Scala, extra brownie points for some specific roles)
- Mathematics(Probability, Statistics, Linear Algebra and Calculus) - https://medium.com/@rbhatia46/essential-probability-statistics-concepts-before-data-science-bb787b7a5aef
- Machine Learning(this includes Deep Learning) and Model building
- Data Structures and Algorithms(must and mandatory for top product based companies like FAANG)
- Domain Understanding(Optional for most openings, though very critical for some roles based on company's requirement)
- Literature Review(must for Research based roles) : Being able to read and understand a new research paper is one of the most essential and demanding skills needed in the industry today, as the culture of Research and Development, and innovation grows across most good organizations.
- Communication Skills - Being able to explain the analysis and results to business stakeholders and executives is becoming a really important skill for Data Scientists these days
- Some Engineering knowledge(Not mandatory, but good to have) - Being able to develop a RESTful API, writing clean and elegant code, Object Oriented programming are some of the things you can focus on for some extra brownie points.
- Big data knowledge(not mandatory for most openings, but good to have) - Spark, Hive, Hadoop, Sqoop.
-
Build a personal Brand
- Develop a good GitHub/portfolio of use-cases you have solved, always strive for solving end-to-end use cases, which demonstrate the entire Data Science lifecycle, from business understanding to model deployment.
- Write blogs, start a YouTube channel if you enjoy teaching, write a book.
- Work on a digital, easy-to-open, easy-to-read, clean, concise and easily customizable Resume/CV, always include your demo links and source code of every use-case you have solved.
- Participate in Kaggle competitions, build a good Kaggle profile and send them to potential employers for increasing the chances of getting an interview call real-quick.
-
Develop good connections, through LinkedIn, by attending conferences, and doing everything you can, it's very important to land referrals and get yourself started with the interview process through good connections. Connect regularly with Data Scientists working at top product-based organizations, fast-growing startups, build a network, slowly and steadily, it's very important.`
Some Tips on Resume/CV:
-
Describe past roles and an impact you made in a quantifiable way, be concise and I repeat, quantify the impact, rather than talking with facts that have no relevance. According to Google Recruiters, use the XYZ formula -
Accomplished [X] as measured by [Y], by doing [Z]
-
Keep it short, ideally not more than 2 pages, as you might know, an average recruiter scans your resume only for 6 seconds, and makes a decision based on that.
-
If you are a fresher and don't have experience, try to solve end-to-end use-cases and mention them in your CV, preferably with the demo link(makes it easy for the recruiter) and the link to source code on GitHub.
-
Avoid too much technical jargon, and this goes without saying, do not mention anything you are not confident about, this might become a major bottleneck during your interview.
-
Some helpful links :
-
If you want to quickly revise your math basics, follow this : https://media-exp2.licdn.com/dms/document/C4D1FAQFzFmR919-Erw/feedshare-document-pdf-analyzed/0/1655384106479?e=1656547200&v=beta&t=9bm4OUyWfM1dQR8LWXsLrGDqYz_Yr_e7TJxHXLXe36I
-
If you want to quick revise you Stats and ML basics, follow this : https://media-exp2.licdn.com/dms/document/C4D1FAQFLvzVgVxYAAA/feedshare-document-pdf-analyzed/0/1656265480370?e=1657152000&v=beta&t=RD90ZEx3x2VLUGSthO-1uYKadzwTRixKRg3s8j2nvOc
Probability, Statistics and Linear Algebra
- Understand the basics of Descriptive Statistics(Really Important for an interview) 📘
- 40 Question on probability for a Data Science Interview 📘
- 40 Statistics Interview Problems and Answers for Data Scientists 📘
- Probability and Statistics in the context of Deep Learning 📘
- Probability v/s Likelihood 📹
- Bootstrap Methods - The Swiss Army Knife of any Data Scientist 📘
- Confidence Intervals Explained Simply for Data Scientists 📘
- P-value Explained Simply for Data Scientists 📘
- PDF is not a probability 📘
- 5 Sampling algorithms every Data Scientist should know 📘
- The 10 Statistical Techniques Data Scientists Need to Master 📘
- Crash Course in Applied Linear Algebra 📹
SQL and Data Acquisition
This is probably the entry point of your Data Science project, SQL is one of the most important skills for any Data Scientist.
- 5 Common SQL Interview Problems for Data Scientists 📘
- 46 Questions to test a Data Scientist on SQL 📘
- 30 SQL Interview Questions curated for FAANG by an Ex-Facebook Data Scientist 📘
- SQL Interview Questions 📘
- How to ace Data Science Interviews - SQL 📘
- 3 Must Know SQL Questions to pass your Data Science Interview 📘
- 10 frequently asked SQL Queries in Interviews 📘
- Technical Data Science Interview Questions: SQL and Coding 📘
- How to optimize SQL Queries - Datacamp 📘
- Ten SQL Concepts You Should Know for Data Science Interviews 📘
Data Preparation and Visualization
- 5 Feature Selection Algorithms every Data Scientist should know 📘
- 6 Different Ways to Compensate for Missing Values In a Dataset 📘
- A Brief Overview of Outlier Detection Techniques 📘
- Cleaning and Prepping Data with Python for Data Science — Best Practices and Helpful Packages 📘
- When to use which plot for visualization 📘
- Ways to detect and remove Outliers 📘
- Dealing with Class Imbalances in Machine Learning 📘
- Smarter ways to encode categorical data
- Numpy and Pandas Cheatsheet 📘
- 3 Methods to deal with outliers 📘
- Feature Selection Techniques 📘
- Why, how and When to scale your features 📘
- Everything you need to know about Scatter plots 📘
- How to Select Features for Machine Learning 📹
- 10 ways for Feature Selection 📹
Classic Machine Learning Algorithms
1. Logistic Regression
- All about Logistic Regression in one article 📘
- Understanding Logistic Regression step-by-step 📘
- Logistic Regression - Short and Clear Explanation - 9 Mins 📹
- Linear Regression vs Logistic Regression 📹
- 30 Questions to test a Data Scientist on Logistic Regression 📘
- Logistic Regression - Understand Everything (Theory + Maths + Coding) in 1 video 📹
- Lasso, Ridge and Logistic Regression all in one video 📹
2. Linear Regression
- 30 Questions to test a Data Scientist on Linear Regression 📘
- Linear Regression - Understand Everything (Theory + Maths + Coding) in 1 video 📹
- 5 Types of Regression and their properties 📘
- Ridge Regression - Clearly Explained 📹
- Lasso Regression - Clearly Explained 📹
3. Tree Based/Ensemble Algorithms
- 30 Questions to test a Data Scientist on Tree based models 📘
- Gini-index v/s Information Entropy 📘
- Decision Tree vs. Random Forest – Which Algorithm Should you Use? 📘
- [Why Random Forest doesn't work well for