Strategizing Your Preparation for Machine Learning Interviews
Decoding ML job roles and identifying focus areas for interview success
Machine Learning (ML) interviews can be tough—I’ve faced multiple rejections early in my career. Each failure taught me valuable lessons and honed my skills. The key to success wasn’t talent or luck, but consistent learning and targeted preparation.
In this article, I'll share strategies for tailored preparation that helped me land my dream job. Understanding the broad spectrum of ML roles—by job responsibility and specialization—can significantly refine your interview strategy and boost your confidence. These insights will equip you to tackle your next ML interview with precision.
Let's dive in. But first, a quick disclaimer1.
🌟 The Spectrum of ML Roles
ML roles can vary widely based on their primary technical responsibilities and area of specialization.
1. Technical Responsibility:
Data Analysis / Modeling:
Skills: Data analysis, feature engineering, model development and training, statistical analysis, experiment design.
ML Infrastructure / Deployment / Scaling :
Skills: Training and Inference services, scalability, model deployment, API integration.
2. Area of Specialization:
Generalist:
Skills: Work on a variety of problem spaces, employ a broad range of ML techniques, and adapt to different requirements of the team.
Specialist:
Skills: Deep expertise in the chosen domain (such as Natural Language Processing (NLP), Computer Vision (CV), or industry-specific areas like self-driving cars and robotics), advanced knowledge of domain-specific tools.
Note: Careers are dynamic. You may specialize in one area or shift to a generalist role based on company needs and your goals. For example, I began as a software engineer in a Search Ads ML team, then specialized in Search and NLP through side projects.
Decoding Job Descriptions
Now that you understand the spectrum of ML roles, you can identify the true responsibilities of the role from its job description. Job descriptions often lack details, so always seek out more information from recruiters.
Before diving in preparation strategy, let’s refresh the 4 ML rounds that we discussed in my previous article (check it out for more details).
The Four Types of Rounds:
📚 Machine Learning Breadth: This round tests your broad knowledge across various ML topics.
🔍 Machine Learning Depth: This round focuses on specialized topics and detailed case studies, from your past projects and/or specific domain knowledge.
🛠️ Machine Learning System Design: This round evaluates your ability to design scalable ML systems.
💻 Machine Learning Coding: In this round, you'll tackle coding challenges around basic algorithms.
🎯 Modifying Your Interview Preparation Strategy
Start with the Fundamentals, ensure you have a solid grasp of the basics and you can start preparing this even before applying for interviews. This foundation is crucial no matter which ML role or level you're targeting. Now, let’s dive into tailored strategies.
Tailoring Your Strategy
Data/Modeling Roles
Pay attention to team/job-specific fundamentals. Example, Google Search interview will focus on search-related questions, not computer vision. If unsure, ask the recruiter directly.
Examples:
For generalist roles requiring Deep Learning, understand multi-layer perceptrons, backpropagation, CNNs, RNNs, and LSTMs.
For specialist roles like NLP positions, familiarize yourself with word2vec (asked to me in a ML breadth round for NLP role), word embeddings, and transformers.
Research Company Blogs and Papers: Many companies have ML blogs that provide insights into their work, Some popular blogs I follow:
Google AI, Pinterest Engineering, Meta AI, Netflix Research, Amazon Science, AWS ML, Microsoft Research, Snapchat Engineering, Uber Engineering, Doordash Eng blog.
Articles related to the team/domain you’re interviewing for provide insights into their challenges and potential interview questions. Discussing these topics can also spark valuable conversations with your interviewer.
As roles become more specialized, the focus shifts heavily toward domain-specific knowledge. Note that most senior roles require some specialization.
Resources for some common area of specializations:
Ranking/Recommendations: Critical for Search (Google, Amazon, Microsoft Bing, Airbnb), Discovery (Facebook, Instagram, TikTok, Pinterest, Netflix), and more. Generally have the most opportunities and jobs availability.
For ranking algorithms, see A Complete Guide for Ranking and Introduction to Ranking.
Ads: Understand ads specific challenges like calibration and bidding. Check out this article from the Pinterest Engineering blog.
Natural Language Processing (NLP): Understand transformers, attention mechanisms, and LLMs. See this beginner guide on NLP. For LLMs, explore this detailed guide from Aishwarya Naresh Reganti.
Computer Vision: Understand CNNs, RNNs, LSTMs, Image representation in features, Object detection and Classification. Check out this fundamental course from Udacity.
ML Services and Infrastructure Roles
Prepare specifically for the team/company you're interviewing for as interviews are often around company tech stack.
Highly Recommended Course: Educative.io’s ML System design
Examples:
Streaming Services (e.g., Netflix): Study video recommendation systems and related questions. Example: Exponent's article on predicting watch time.
Search/Recommendations Roles: Focus on user content feed recommendations and other common questions such as "Recommend restaurants on a food delivery app" or "Design user feed"
Recommended: Checkout Eugene Yan's article on recommendations systems.
Tip: Designing Recommendation systems are frequently asked in ML System design rounds.
Ads: Understand ad ranking and related challenges like multi-stage ranking. Recommended: Snapchat Engineering's article on ad systems.
📈 Parting Note: Tracking Your Progress
As you navigate the journey of preparing for ML interviews, it's essential to track your progress and learnings. Keep a journal or use digital tools to document:
The previous interview questions
The papers/blogs you've studied
Key bullet points from your research
Consistent tracking not only helps you stay organized but also boosts your confidence as you see your knowledge and skills grow. It took me time to realize its value, but now I consistently maintain a Google Doc for this purpose.
Remember, ML research advances rapidly, and new breakthroughs can change interview questions so keeping track is key.
Good luck with your interview preparation, and keep pushing forward!
🎉 Good Reads for the weekends
ML:
Breadth: Unsupervised clustering with DBSCAN by
andSystem Design: How to design a real-time system to predict crypto prices by
Theory: Causal Modeling in Recommender Systems by
ML Career: How Data Science Roles vary across top tech companies by
Career and Leadership:
Please let me know if I missed anything in comments. If you like the article, please hit ❤️ button and consider subscribing. If you would like to chat, connect on LinkedIn.
Disclaimer: This blog is based on personal experiences and publicly available resources. Please note, the opinions expressed are solely my own and do not represent those of my past or current employers. Always refer to official resources and guidelines from hiring companies for the most accurate information.
This was a great guide! And as you said, the field is evolving rapidly so its important to have a strategy and keep track of your progress.
Also, the spectrum of ML roles was quite insightful.
Great demonstration of many ML roles out there, Kartik.
I've had many people reach out to me saying, "I'm interested in switching into ML", most times with the lack of clarity what they mean by ML. There are just so many options. In future, I will forward them this post to get that clarity on what in ML interests them.
Btw, thanks for sharing the latest from Leadership Letters.