How I prepare for ML interviews
The four buckets
Most ML interview loops test some mix of four things. I prepare each one deliberately rather than grinding randomly:
- ML breadth — bias/variance, regularization, common algorithms, when to use what, and why.
- ML depth — one or two areas you can go deep on (e.g. NLP, recsys, computer vision, LLMs).
- Coding — standard DS&A, plus the occasional "implement this from scratch" (k-means, a small neural net, attention).
- ML system design — designing an end-to-end ML system: data, features, model, serving, monitoring, feedback loops.
My weekly loop
Consistency beats intensity. A steady loop for 4–6 weeks beats a frantic weekend.
- Mon/Wed/Fri — coding practice (45–60 min).
- Tue/Thu — read + take notes on one ML topic, then explain it out loud.
- Weekend — one full ML system design mock, written up end-to-end.
Scaling the loop into a 12-week plan
When I have a longer runway, I stretch the weekly loop into three phases. The buckets don't change — the emphasis shifts as the weeks go on.
- Weeks 1–4 — Fundamentals. DS&A every other day, paired with implementing the core ideas from scratch: a neural net and backprop, a couple of classic algorithms, and a minimal transformer. Géron's Hands-On ML and Karpathy's Zero to Hero carry most of this phase.
- Weeks 5–8 — Engineering. The applied half: MLOps (deployment, containerization, experiment tracking), LLM production pipelines and RAG, and the bread-and-butter applied problems — search, ranking, and recommendations. Designing ML Systems and AI Engineering anchor it.
- Weeks 9–12 — Integration. Mostly mocks. A dozen-plus system design problems written up end-to-end, advanced topics (distributed training, causal inference) as time allows, and behavioral prep. The last week is deliberately light — rest and consolidation, not new material.
Across all of it I keep rough DS&A targets — on the order of 40–50 easy and 100–120 medium problems — and a standing rule to revise and write up notes every week. The numbers matter less than the habit of closing the loop.
A note on "explaining out loud"
The single highest-leverage habit: after reading something, close the tab and explain it as if to a colleague. If you stumble, you don't actually know it yet. This surfaces gaps faster than re-reading ever will.
Check out the ML interview prep page for the resources I use in each bucket.