Ace The Data Science Interview
by Kevin Huo, Nick Singh
The book of the week from 15 Nov 2021 to 19 Nov 2021
This book is the best way to prepare for Data Science, Data Analyst, and Machine Learning interviews, so that you can land your dream job at FAANG, tech startups, or Wall Street.
Where to buy this book:
Questions and Answers
Doink
how to balance interview prep when interviewers are expecting SQL+Leetcode+ML Theory+ System Design and Github Projects as a way to gauge effectiveness of a candidate along with a full time job?
Nick Singh
It’s a lot, and can feel overwhelming. First things first — ask recruiters what you need to know, check this via Glassdoor, or better narrow down your search and only apply to most relevant titles. For example… System Design might be more for Data Engineer or ML Eng roles… not DS or Data Analyst. Similarly, ML Eng might not be tested on SQL but more LeetCode style question. This narrows down the space of things to know.
Nick Singh
But to get to the core of the question; balance. I have no idea, it’s deeply personal. I struggle to balance cooking healthy, working out, with my career stuff. Others have their own balancing act issues, balancing job search stuff with family friends and full time jobs. Ultimately comes to prioritization — there’s no easy answer!
Doink
Nick Singh yes the 2nd part of balancing job along with other commitments along with family how do you do that? Would love to know that also 🙂
Also to add a lot of them are also asking these product manager type of questions like how to improve Google Maps etc
Kevin
echoing what Nick said - focus on the particular job you want and what those job descriptions encompass. Product analytics roles will heavily focus on SQL/Product sense vs. ML eng which is coding & ML for example. Also depending on the company and role you will want either more breadth (FB product DS) or depth (Netflix ML research) so you should allocate your studying time accordingly
Doink
how to remember ML theory for long period of time?
Nick Singh
spaced repetition. I’ve been exposed to it, multiple times, over multiple years, that even if I don’t remember every detail I know what I can look up, or can easily refresh myself. No other way around it!
Kevin
Also it helps to practice the fundamentals - ML (like many technical topics) is not easy for rote memorization, and being able to pattern match among different use cases & fields is nice
xnot
What do you think is wrong about the current practices in tech companies when it comes to DS interviews?
Nick Singh
Coding questions often asked are too hard. When was the last time a DS needed to know about a tree structure or used a Linked List. Come to think of it… do even SWEs use Linked Lists? I think those leetcode style questions are already sorta dumb for evaluating SWE talent, and lazy thinking ported it over to DS.
Kevin
What Nick said also applies to hard technical questions in ML/Stats/Prob land for ML research / ML eng and quant roles (in finance) although it’s more relevant since for deeply technical roles you should know the fundamentals well (for example if you are doing ML research you should understand the math behind the algorithms)
xnot
What would an ideal interviewing approach look like?
Nick Singh
An early filtering round. Quick phone call about projects/background, throw in 1-2 stat/ML theory questions, and have them write a simple SQL query. Maybe of load some of this to a recruiter if possible. Then do 2 more technical rounds. First technical round is something more academic/textbook… aka a data manipulation/cleaning exercise, some more theoretical questions (what’s your favorite modeling technique and why… probe if they just call sci-kit learn or really know what they are doing and understand the fundamentals). … and then something more open-ended / how would you approach this real-world problem we are dealing with. Do they have business sense. Then a final behavioral interview to understand what this person is done, how fast they are growing, and whether they actually are interested in the job.
Kevin
Depends on the role - product analytics: SQL & product sense, ML eng: coding & system design & ML for example, and also the company (higher % of more senior ppl at Netflix than Facebook). More variance for startups since the hiring process is less defined. But yes what Nick outlined is generally good for a DS process
Nikhil Shrestha
Hello Kevin and Nick thank you for writing the book.
My questions are:
- How to prepare theoretical topics for data science interview. As we see the job description keeps increasing every day. Even when you are confident about performing a concept practically how can we answer the theory question. Basic example: SVD is one question which I feel is vast, I know what SVD is but how to trim my answer to explain it to interviewer. You can even explain it using any other topic I want to understand the general approach
- Now a days most of data science job description wants hands-on experience even if we know the concepts we don’t get the interview, resume gets selected but HR asks for hands on experience and people like me don’t have any. Hence how can we answer that question to HR person asking us. 😄
Kevin
- one way I have found effective is to do mock interviews with friends or others - when you can explain deeply technical concepts in a succinct manner then you understand them quite well. also one tip for me personally is not memorizing any specific equations - if you focus just on rote textbook memorization, then when thrown a curveball, just like an ML algorithm you’ll have overfit your knowledge. 2) doing projects is super helpful here, to demonstrate that you are proactive, driven, and passionate about using data science for XYZ
Nikhil Shrestha
Thank you for the reply and i will follow these advices to improve myself. 🙂 🙏
anas hasni
Hello everyone, my first question is what to expect in terms of questions in roles related to deep learning (CV, NLP).
The second question is related to experience in deploying models to production. Is it really necessary to have this experience in order to get a position in industry especially with a research background. Thank you
Kevin
- depends on your background (they will ask about your research experience if you have any) and then depending on research or eng will be more or less theoretical, 2) no since otherwise it’s a chicken & egg problem - that being said, the interviews are there for them to gain confidence that you understand the models well enough theoretically and also have some experience (whether through projects or research etc) to be a good fit
anas hasni
Thank you Kevin for your response. I really appreciate it 🙂
Wendy Mak
As an interviewer, what would be some good questions to ask (or red flags to look for) in order to decide whether someone would be a good fit for the team? (e.g. someone might be very good technically but a terrible team player in which case that might not be the person you want to hire)
Kevin
Might be some personal bias here but things I look for are: 1) motivation for joining company/team specifically, 2) where they see themselves in X years, 3) what gets them excited to do meaningful work everyday, 4) their ability to be a team player and questions that are in those areas may range from something like “tell me about a time you handled a conflict with a boss” (for 4) to “I saw you had XYZ on your resume as projects, how did you come about those?” (for 3)
Wendy Mak
As an interviewee, what are some questions you would ask your interviewer to gauge that this job is indeed a good choice for you and that you would enjoy your time at the company and be able to grow your skills?
Kevin
Again personal bias here but generally along the lines of what the company is looking for and how to grow within the company - examples: 1) what does the day-to-day look like? 2) how does the role change over time? where are the biggest areas of growth? 3) what is the company culture like? what about trade-offs (for example, speed of shipping new products vs. having highest quality)?
serdar
Does star method really work for the DS interviews?
Nick Singh
Absolutely! STAR is for behavioral questions.. I think of it as structured story-telling. And DS & ML roles def ask these types of questions!
Kevin
+1 on what Nick mentioned (he’s a verified pro with the method!)
Doink
How much of MLOps questions are asked for DS/MLE related roles for interviews?
Kevin
Depends on company and role again but those topics should only be asked if you have relevant experience/projects in real-life large-scale model deployment and or if the job description mentions MLOps specifically
Doink
How to master the skill of interviewing especially when one has to apply for multiple roles just to get a few interview calls?
Kevin
Practice makes perfect (generally) - just like an ML algorithm you get better with more data (interviews) 🙂 - also need to know when to focus on breadth vs. depth based on the roles
WingCode
Hi Kevin and Nick Singh,
Thank you for doing this.
How do you approach getting a DS job when the job application asks for Masters or PhD in Data Science?
Kevin
When most job descriptions have that job req, it (usually) isn’t a hard requirement, they just need a way to filter candidates. There are obviously exceptions, especially for deeply technical roles requiring specific knowledge (say ML research). My 2 cents here would be to try and do projects in the space to demonstrate drive and competency
WingCode
Thank you Kevin for the answer 🙂
Maja
Hello Kevin and Nick Singh👋 Thank you for being here with us and answering our questions. What are the advantages and qualities that we as an interviewee need to have that FAANG or Wall Street companies are looking for? From your experience what you have seen to be that crucial difference which makes you get the job in those companies?
Kevin
Definitely depends on company and role - from the behavioral side it’s a sense of motivation and drive and cultural fit, from the technical side it varies a ton but is generally related to either breadth or depth among a variety of topics. For example, FB product DS is about breadth and knowing SQL/product sense etc vs. Wall St quant is about stats/prob/coding/ML generally. Sorry it doesn’t answer the question but that is my observation, there is no silver bullet 🙂
adanai
Hello Nick and Kevin, thank you for doing the QnA!
For an individual transitioning to a role in Data Science and allied fields, are skills related to scalable tools required or is that something that can be picked up on the job? (Eg. Spark and similar tools)
Kevin
Can be picked up on the job for sure
adanai
Besides implementing projects, what is a good strategy to adopt to apply for jobs that prefer candidates with a Masters degree (when I do not have one)
Kevin
Generally those job descriptions are looking for lots of depth (specific knowledge) so good to focus on those areas. Projects are great as you mentioned, keeping up with state-of-the-art techniques also (if ML), and just generally being able to demonstrate that even if you have no direct job experience in the space, you can and will pick it up quickly
adanai
While preparing for interviews, should one also focus on learning to develop basic algorithms from scratch (that are generally available via popular packages) or is theory sufficient.
Kevin
Nice to do both, with a focus on the fundamentals (i.e. not memorizing and equations or specific syntax)
adanai
What are few points to keep in mind as a framework to be checked off before mentioning a project in the resume/portfolio
Nick Singh
great question! you should mention it, if you could talk intelligently about it. If you lack work experience… and just need to fill it up.. then def add more things. But don’t feel the need to over-stuff with random things… sometimes if something isn’t very special … but other things on the resume are… adding a simple neutral project detracts from the good stuf
Kevin
+1 to what Nick said - for me personally I only include it if I feel ready to be (potentially) grilled on the topic
Doink
How much time is required to prepare if your goal is to be proficient in Leetcode assuming 100-150 questions here, ML theory, ML System Design and SQL? Is 2-3 months of full time effort enough?
Kevin
Depends on the person and how much time spent per day - generally a few months of full time effort should be good enough to be quite proficient in any area although the more deeply technical the topic the harder. So should be an okay timeline roughly speaking
Doink
how much of an important signalling metric is Kaggle Competition rank? I know many say that Kaggle isn’t a good thing cause it applies kitchen sink of problem whereas in the real world it’s all about latency but then many companies are putting their internal problem as a kaggle competition.
Kevin
Not high signal unless you’ve won competitions imo
Asmita
Hi Kevin and Nick Singh, thank you for doing this! My question for you today is that generally the job descriptions are pretty vague. Should we prepare for all the required topics mentioned, or focus on the major ones? And how do we get to know what would be the major requirement in that particular role? Can you please specify what a person should be prepared with for an entry level position or internship in data science?
Nick Singh
Focus on the major ones, but generally most roles look for similar things. So one way to get a sense of what’s important is just to look at the same type of role… and across multiple companies you’ll get a sense of it. For example, for most Product Data Science roles you’ll see mentions of Exploratory Data Analysis, SQL, A/B Testing, and “supporting product/business teams” == biz acumen and product sense.
Kevin
+1 to what Nick said, for entry level it’s more about the fundamentals than anything too specific so be sure to brush up based on the relevant area (Product analytics is a lot of SQL & product sense for example, whereas ML eng is coding & systems design & ML)
Quynh Le
Hi Kevin and Nick, thanks for coming to share about your book! When preparing for interviews, how do you suggest a person approach learning different topics (programming, stats, machine learning, etc)? Should he/she learn all at the same time or each topic after each other? Also during interviews, how can an interviewee address some technical topics that he/she does not know or use yet but is aware of and could pick up later if got the job?
Kevin
Definitely depends on the person - with so many topics it can feel like a firehose (I personally like doing brief deep dives but then rotating among topics). If you get asked those topics you should just admit you don’t know / don’t have any experience in the space - in general interviewers shouldn’t press too hard for this as long as you don’t put random buzzwords on your resume that you can’t explain thoughtfully
Allan
Hi Nick and Kevin, thank to you both for taking the time here to answer questions here and share about your book, really appreciate it! How would you suggest that people in an existing technical role best approach the process of transitioning to DS/ML? Relatedly, If someone has relatively strong DS/ML knowledge but lacks actual DS/ML work experience, how to best overcome this issue? Side projects to build up a portfolio of demonstrable skills?
Kevin
Definitely side projects, and any research if relevant (for example, lots of ML hiring managers love research). Also helps to stay up to date with state-of-the-art and whats going on in open source world to demonstrate passion in the area
Allan
Yes, that’s what I had thought, and good point about the research component.
ASHISH SONI
Hi Nick Singh
What are the 5 best practices, a day before the ML interview??
Allan
What is the best approach to handle the reality that the state of the art methods in the field are progressing so fast, especially in the areas such as NLP? How to balance between preparing the “the basics” vs wanting to appear aware (if not proficient) of the newer developments?
Kevin
Good to know both and understanding tradeoffs if asked about them - still good to start with the basics, but if you’re applying to jobs in a specific space (say CV at self driving co’s) then it’s good to be able to keep up with and explain state-of-the-art techniques
Allan
Thanks!
Amruta Ranade
Hi Nick Singh and Kevin, firstly thankyou for writing this book!
I wanted to know is there a list of things noted that we should avoid doing during our interviews?
Kevin
Definitely - will let Nick chime in on the behavioral side but for the technical side some things include: 1) not assuming you know more than your interviewer especially if it’s specific in the context of the job, 2) pretending to know some technical topic then getting grilled on it and not being able to explain anything, 3) talking/coding/whiteboarding for way too long on a topic without checking in with the interviewer. Have been through all 3 personally :)
Arthur c
Hello everyone, first of all thanks to Nick Singh and Kevin for this important book, and to Alexey Grigorev for giving us the opportunity to ask questions to valuable authors.
Of course, this book is the product of a long and detailed study that takes a lot of time, but of course, there is a *summary of this work* that is shaped in your minds.
So, what are your basic recommendations for candidates who work in the field of DS and who are at the stage of an interview, with a few items that have been filtered through all this work? (Technically and behaviorally)
Kevin
Will let Nick chime in on the behavioral side - on the technical side: 1) figure out whether you’re optimizing for breadth and depth since there’s an infinite among of knowledge in the spaces that make up “data science” 2) the more work experience you have, the more emphasis that will play in interviews (generally) and if you have less experience then projects are great, 3) fundamentals matter more than rote memorization especially for very technical topics like Stats & ML
Arthur c
Thanks Kevin definitely
useful summary.
Tim Becker
Hello Nick Singh and Kevin, thanks for being here. I would like to ask you what a cold email is?
Tim Becker
- What are the main differences between interviews for junior, senior and lead DS roles? Is your book suitable for all seniority groups or rather focused on one?
Kevin
Will let Nick chime in here - it should be suitable for all levels (we have problems ranging from “easy” to “hard” and across many companies. That being said, it has a lot of refreshers on topics, chooses specific topics, etc. and therefore is by no means a silver bullet for every person and use case
Tim Becker
- Often applicants will have a few days to work on a task that they will present to the interviewers. Since the time for the task is limited how would approach this and what would focus on?
Kevin
There’s a lot of variance on takehomes.. will let Nick add here but generally speaking my personal view is that it’s there to filter for candidates who truly want to work at the company since it’s generally not an easy task. So would only do it if you really want to work at the company, and would always timebox it (can always spend a long time but I personally prefer a quicker, mostly complete project than a completely perfect one since the marginal utility is lower for the latter imo)
Tim Becker
- What are questions interviewers want to hear from the applicants when it is their turn to ask questions?
Kevin
Will let Nick add on here but for me anything demonstrating curiosity for the role and the interviewer themselves, examples: 1) what brought you to XYZ company? 2) how do you see your role changing over time? 3) can you describe your day-to-day?
Tim Becker
- As an interviewer, what can you expect from recent graduates in terms of common sense and understanding the companies business. I had the impression that simple questions concerning the field the company is working in seem to be very hard for some graduates.
Kevin
there’s a good amount online about various companies so it’s just about doing your homework - yes generally new grads may have a worse grasp of business sense but that may change with technology adoption trends and a growing awareness
Doink
Nick Singh and Kevin I see that there are multiple roles like Data Analyst, Product Data Scientist, Data Scientist etc I am curious to know what are the required skills for each of the role like for Data Analyst it would be SQL,Excel,Pandas etc. Similarly what would it be for NLP Engineer, MLE, CV Engineer etc?
Kevin
depends on role and company but data analyst / product data scientist is usually focused on SQL / product sense whereas MLE (and NLP & CV engineer) is more coding / systems design / ML
Gur Hevroni
Nick Singh & Kevin thank you for taking the time to interact with the community!
- Do you have tips or suggestions on how should one mentally prepare for the high rejection rate for these positions? That is, how to constructivy assess why you were rejected and how/what to improve?
- Similarly, what are your suggestions for one to assess her/his level of preparedness, prior to submitting applications, or emailing recruiters?
Gur Hevroni
As a side note, your book was incredibly helpful for me in preparing for DS interviews - and yesterday I actually got my first job offer! :thank_you:
Kevin
Congrats Gur Hevroni! Glad to know it helped 🙂 Regarding your questions: 1) its a numbers game and depending on the person it’s useful / not useful to try and analyze that metadata for takeaways (you can even try to apply some data science on the process if you interview at enough places haha), 2) doing mock interviews with others and feeling ready to be able to explain projects and various concepts are good indicators
Gur Hevroni
Thanks, Kevin! These are great tips!
Allan
How would you suggest creating/choosing a portfolio project that really stands out? How important are good portfolio projects in (a) getting the initial interview and (b) the interview process itself?
Kevin
Will let Nick elaborate here, but my 2 cents is that it’s important to just choose an area you’re truly interested in and go from there - DS/ML is a toolkit and can be applied to virtually every field. The importance in getting initial interviews and in the process itself varies with role/company but I find that for the former, it generally has a decent weight the less direct job experience you have, and for the latter it matters a lot in technical roles (ML especially)
Allan
Thanks Kevin
Alex
Hi there Kevin & Nick Singh, it’s a pleasure talking to you! Since your magnific book has probably been read by many people transition careers, here goes my (very specific) question:
For Data Science/Analysis positions that are not research-oriented, what weight would you give to business understanding as a skill? Say someone is trying to jump into data from a business background, do you think their potential transfer learning is higher since they get to know the business from a ROI point of view?
Kevin
The business sense is super useful and helpful for product analytics / product DS roles so high generally
Prasad Paravatha
Hi Kevin, Nick Singh Thanks in advance
- In addition to reading your book 😄, do you have any good recommendations for courses in DS and/or ML?
- What are the responsibilities of TPM (Technical Product Manager) or TPO (Technical Product Owner) at FAANG companies?
Kevin
1) I’ve looked at some of MIT OCW for technical topics and for ML there’s a lot out (Andrew Ng’s material for example) there so will need to come back to this. 2) they generally act as a technical PM so basically they interface with ML engineers/researchers etc. and hence very similar to regular PM except that they need to understand and speak the technical jargon
Nikhil Shrestha
Hello again Nick Singh and Kevin
Another question which I am interested in is what kind of projects do recruiters usually want to see in the resume ?
Online you find many projects ranging from basics to advance, domain specific etc.
But when it comes to selecting best projects to showcase in resume (say top 3 projects) which one should we select.
Is there some advice which you could give here ?
Also are there some link or resources which can help in getting some idea about “trending” projects which have better probability of catching an eye of recruiter.
Varun Nayyar
Hey Nick Singh and Kevin Kev, great to see you guys here I follow you on LinkedIn you both post great stuff. My questions would be what kind of projects would make you stand out of the crowd in relation with analyst-consulting based roles? Is it a good practice to research about the work already being done in a company you are applying to for a particular role? Does it come up as being a kiss up to recruiters?
Should I really work at my DSA if I am planning for DS roles only and not at MLOps or MLE profile? In case I find myself wanting to get into MLE, how much swe knowledge do I need to function as a good MLE? Do official certifications from tech giants like TF developer from Google or others like IBM, Nvidia really boost up placement chances in these companies? I was told that they do but still it would be better if you could throw some light on it.
One final question apart from academia.
Also how to deal with that overwhelming feeling when you know there’s a lot to cover(coding+stats+SQL+ML to name a few) but time is a constraint?
Sorry for throwing a lot haha
Cheers and all the best for your book. Looking forward to read it once it’s available here!!
Join the Book of the Week Discussion
To take part in the book of the week event:
- Register in our Slack
- Join the
#book-of-the-weekchannel - Ask as many questions as you'd like
- The book authors answer questions from Monday till Thursday
- On Friday, the authors decide who wins free copies of their book
To see other books, check the book of the week page.