The Tricky Parts of ML Interviews
Master the five challenging domains of machine learning interviews with tips from industry veteran.
I have recently launched the most dedicated effort to help folks with their MLE interview prep (opened another 20 spots on Friday, there are still 6 left as of writing this on Monday). In working closely with a small group of folks I am once again reminded of how many different things you can get asked in these interviews.
Leetcode, Forever and Always
Leetcode, ever-present, is about understanding data structures and algorithms and being remarkably quick about it. You're expected to see a problem, immediately recognize the pattern, and code up a solution while explaining your thought process—all within 30-45 minutes. It's like being asked to solve a Rubik's cube while simultaneously narrating how you're doing it, all while someone watches you with a stopwatch. "Just implement a modified Dijkstra's algorithm with a heap optimization," they say casually, as if everyone spends their weekends optimizing graph traversals for fun. So essentially, you have to be an expert competitive programmer.
The Leetcode Rebellion
Other companies are rebelling against leetcode and have a different style of coding interview which is much more about low level design and best practices. These interviews focus on how well you structure your code, whether you consider edge cases, how you handle errors, and if you write tests. They'll scrutinize your variable naming conventions and gasp in horror if you don't follow SOLID principles. "I see you didn't create an interface for that functionality—could you explain why?" they ask, while mentally deducting points from your invisible scoreboard. In these interviews, you're not just writing code; you're crafting a masterpiece that will be judged as if it were going into production tomorrow. So you have to be Uncle Bob.
ML System Design Gauntlet
ML system design (now sometimes including LLM system design?) can ask you to design any ML system under the sun. "Design a recommendation system for a streaming platform," they say, expecting you to cover everything from data ingestion to feature engineering to model selection to A/B testing to monitoring—all in 45 minutes. Then comes the twist: "What if we have 100 million users?" or "What if the model needs to update in real-time?" And just when you think you've covered everything, they drop the final challenge: "Oh, what if you have to run on device?" Suddenly you're explaining quantization techniques and model compression as if you've been implementing them your whole career. So you have to be Valerii Babushkin.
ML Coding Olympics
ML coding. You can be asked about finding a bug in pytorch code, implement convolution layer from scratch, train a classifier on dummy dataset... The range is extraordinary. One minute you're debugging a gradient calculation issue, the next you're implementing back-propagation from first principles. "Could you just quickly code up a transformer attention mechanism?" they ask, as if it's as simple as writing a for-loop. You're expected to know the ins and outs of multiple frameworks, understand the mathematical underpinnings of complex algorithms, and still write clean, efficient code—all while explaining your approach as if teaching a graduate seminar. So you have to be Andrej Karpathy.
ML Fundamentals: The Academic Challenge
ML Fundamentals. Any math, stats, classic ML... I have even seen people asked about Markov processes and how computers work at the most fundamental levels. These interviews feel like qualifying exams for a PhD program. "Explain the relationship between maximum likelihood estimation and cross-entropy loss," they say, followed by "Now derive the back-propagation equations for a simple neural network." Some companies go even deeper, asking about eigenvalue decomposition or the mechanics of floating-point operations. You're expected to recall formulas and derivations you may have learned years ago and apply them with the confidence of someone who teaches these concepts daily. So you are Andrew Ng now?
Behavioral Minefield
Behavioral interviews try to get at your scope, growth mindset, being data driven, etc. These seem straightforward but can be surprisingly challenging. They want detailed stories about specific situations, complete with metrics and impact, all delivered in a way that shows you're reflective, collaborative, and constantly improving. "Tell me about a time you failed," they ask, expecting you to walk the perfect line between honesty and not revealing catastrophic flaws. These interviews test not just your experiences but how well you can package them into neat little STAR-method narratives that check all their hidden boxes. So I don't even have a good example here...
The Strategic Approach to Preparation
The preparation is grueling, so you really need a strategy:
If you currently have a job and aren't actively looking:
Start keeping a detailed "brag document" immediately—record all your achievements, challenges overcome, and metrics improved.
Set aside 30 minutes each week to update this document while events are fresh in your mind.
Dedicate 2-3 hours weekly to stay current with ML developments by reading key papers and implementing small projects.
Join a study group or community where you can discuss technical concepts regularly to keep your explanation skills sharp.
Practice one medium-difficulty algorithm problem weekly to maintain your problem-solving abilities.
If you're beginning your job search:
Research each company thoroughly and create a spreadsheet tracking their specific interview formats and focus areas.
Contact current or former employees on LinkedIn to get insider information about their interview process.
Schedule similar companies together in your interview timeline—group Leetcode-heavy companies in one week, ML design-focused companies in another.
Allow at least 3-4 days between interviews with significantly different formats to adjust your preparation focus.
Create company-specific preparation checklists based on their known interview style and the role's specific requirements.
If you're already interviewing:
After each interview round, immediately document what went well and what didn't in specific technical areas.
Take a mock interview assessment in each major area (Leetcode, ML design, ML fundamentals) to objectively identify your weaknesses.
Allocate your preparation time proportionally—spend 60% on your weakest areas, 30% on moderate areas, and 10% maintaining strengths.
Focus on understanding patterns rather than specific problems—mastering binary search principles is more valuable than memorizing 20 variations.
Record yourself explaining ML concepts and review the recordings to improve clarity and technical communication.
Find an accountability partner who's also interviewing to maintain consistency and exchange feedback on your explanations.