TensorTonic guides

ML System Design Interview Practice: A Session Plan You Can Repeat

A timed ML system design practice session, the eight phases a 45-minute answer covers, which design problems to practise first and where to practise them.

By TensorTonic's founderLast updated 9 min read

A good ML system design practice session takes about 90 minutes and has three parts. You review the answer framework for 15 minutes, solve one design problem against a 45-minute timer and spend the rest of the time checking the answer phase by phase. On TensorTonic you can practise this on the ML System Design section, which has 37 lessons and 21 practice design problems modelled on real products.

The 45-minute answer follows the same eight phases on almost every problem, from clarifying requirements to monitoring and retraining. This guide covers how to run the session, what each phase should contain, which problems to practise first and how to tell when you are ready.

How should you structure an ML system design practice session?

Structure each session as a warm-up, one timed mock problem and a written review, in that order. The warm-up makes sure the framework is in your head before the clock starts, the timed problem shows whether you can apply it under pressure and the review turns the attempt into a short list of things to fix. Without the review, a session tends to repeat the same habits from one week to the next.

  1. Spend the first 15 minutes on a warm-up. Read the framework for the 45 minutes once, close it and write the eight phases from memory with a rough minute budget next to each.
  2. Spend the next 45 minutes on one mock problem you have not solved before. Start a timer, talk out loud the whole time and sketch the design as you go, as you would on a shared whiteboard.
  3. Take a five-minute break away from the screen so the review starts with fresh eyes.
  4. Spend the last 25 minutes on review. Check the answer phase by phase against the list in the next section, mark each phase as covered, thin or missing and write down the two thinnest phases.
  5. Before the next session, read the lesson that matches each thin phase, then pick a new problem that leans on that phase.

Two or three sessions a week is a sensible pace, since the days between sessions are when you read the lessons for the phases you missed. If you have a partner, ask them to change one requirement around the twentieth minute, and the lesson on approaching the interview explains what interviewers listen for when you respond.

What should a 45-minute ML system design answer cover?

A 45-minute ML system design answer should cover eight phases, from clarifying requirements at the start to monitoring and retraining at the end, with roughly five or six minutes for each. A fraud problem spends longer on labels and a recommendation problem spends longer on serving, but every phase should get at least a few sentences. The storyboard below shows one whiteboard filling in over the 45 minutes, one box per phase.

One whiteboard, eight frames
45 minutes
  1. Minute 0 to 5
    Clarify requirements

    Write the goal, the users, the scale and the latency limit in one corner of the board.

  2. Minute 5 to 9
    Frame it as an ML task

    Name the prediction, the label and the metric the product cares about.

  3. Minute 9 to 15
    Data and labels

    Say where training examples come from and when each label arrives.

  4. Minute 15 to 20
    Features

    List the feature groups and how training and serving compute them the same way.

  5. Minute 20 to 27
    Model and baseline

    Start from a simple baseline, then the model you would ship and its loss.

  6. Minute 27 to 33
    Offline and online evaluation

    Pick the offline metrics and the A/B test that decides whether the model ships.

  7. Minute 33 to 39
    Serving and latency

    Draw the request path, the cache and the fallback, and check the latency budget.

  8. Minute 39 to 45
    Monitoring and retraining

    Close the loop with drift checks, alerts and a retraining schedule.

Each frame adds one box in green to the same sketch. The dashed arrow from monitoring back to data appears in the last frame, and it is the first thing lost when earlier phases run long.

Each phase has a job in the answer and a lesson that goes deeper on TensorTonic.

  1. Clarify requirements. Ask who the users are, what decision the system supports, how many requests it serves and how fast each one must return. The lesson on clarifying requirements and the one on scale and latency estimates show which questions change the design.
  2. Frame it as an ML task. Turn the product goal into a prediction, a label and a metric, and say whether the task is classification, ranking, regression or generation. The lesson on going from business goal to ML task covers this step.
  3. Data and labels. Explain where training examples come from, when the label becomes known and how you split the data without leaking the future into training. The lessons on labels and delayed outcomes and data splits and leakage go deeper.
  4. Features. Name the main feature groups and explain how the same feature is computed at training time and at serving time. The lessons on choosing features and feature stores and consistency cover both halves.
  5. Model and baseline. Start with a simple baseline that would ship on day one, then propose the stronger model, its loss and why the extra complexity pays off. The lesson on building a baseline explains why interviewers ask for one.
  6. Offline and online evaluation. Choose offline metrics that match the task, then describe the A/B test that decides whether the new model replaces the old one. See classification metrics and thresholds, retrieval and ranking metrics and A/B testing and safe rollout.
  7. Serving and latency. Draw the request path from the client to the model and back, and show where a cache, a retrieval stage or a fallback keeps the answer inside the latency budget. The lessons on latency, throughput and cost and fallbacks and model rollouts cover the trade-offs.
  8. Monitoring and retraining. Say what you would watch after launch, how you would detect drift and what triggers a retrain. The lessons on monitoring and drift and when and how to retrain finish the loop.

Two worked answers show the phases in practice. The video recommendation walkthrough and the content moderation walkthrough each take one prompt through all eight phases, and the lesson on common mistakes and what each level shows explains how the same answer reads differently for a junior and a senior candidate.

Which ML system design problems should you practise first?

Practise problems with a single model and a clear label first, then move to multi-stage ranking and retrieval systems once the eight phases feel automatic. A smaller problem lets you rehearse every phase cleanly in 45 minutes before serving detail takes over.

The order below uses practice problems from TensorTonic's ML System Design section. Each one is modelled on a real product to give it believable scale and latency limits, and none of them describes how that company actually built its system.

  1. Start with Uber ETA Prediction, a regression problem where the main challenges are framing, latency and labels that arrive when the trip ends.
  2. Move to Gmail Spam Filter or Stripe Real-Time Fraud Detection, which add rare positives, delayed labels and people who change their behaviour once the model blocks them.
  3. Practise click and ranking problems next with Meta Ad Click Prediction, where calibration and online evaluation matter as much as the model itself.
  4. Then take on YouTube Video Recommendation System, which needs a retrieval stage, a ranking stage and a plan for feedback loops.
  5. Finish with embedding and graph problems such as Pinterest Visual Search and LinkedIn People You May Know, where similarity search and cold start shape the design.

If the team works in a known product area such as ads or search, move the matching problem type to the front of the list and solve it twice, a week apart.

Where can you practise ML system design interview problems?

You can practise ML system design interview problems on TensorTonic's ML System Design section, where each of the 21 practice problems is solved on a drag-and-drop design canvas. You place system parts such as a feature store, a model server, a cache and monitoring, then draw arrows to show how data flows between them.

A simulator estimates the latency and the monthly cost of the design you drew. Platform checks grade the design against the constraints of the problem, and you get written feedback on the gaps to fix before your next attempt. For the timed part of the session plan, there is a 45-minute interview mode in which an AI interviewer asks questions while you design, which is close to the conditions of a real round. The practice problems and the canvas need a Plus subscription, and the 37 lessons are open to read. The pricing page lists the plans.

Several other resources come up often when candidates prepare for this round. Educative has a course called Grokking the Machine Learning System Design Interview. Designing Machine Learning Systems is a book by Chip Huyen about building ML systems for production. ByteByteGo publishes system design courses and guides. Hello Interview is an interview preparation site that covers system design. Aced, formerly known as Exponent, has an ML engineer interview course. PracHub is an interview practice site, and Codemia is a site for practising system design problems.

The design round is usually one part of a longer loop. The ML engineer interview preparation guide covers the other rounds, and the timed coding and math sittings on the assessments page give you a score for those parts of the loop.

How do you know you are ready?

You are ready when you can cover all eight phases on an unseen problem inside 45 minutes, without notes, and still have time to answer follow-up questions. A single good session can be luck, so look for the same result across your last three or four attempts.

  • You can cover all eight phases on a problem you have not seen, inside 45 minutes, without looking at notes.
  • You state the latency limit and the scale in the first five minutes and refer back to them when you choose the serving design.
  • You always name a baseline before the model you would ship.
  • You can name an offline metric and an online metric for the problem and explain why they might disagree.
  • You reach monitoring and retraining before the clock runs out on most of your recent sessions.
  • A changed requirement halfway through, such as a tighter latency limit, leads you to adjust the design instead of starting over.

If one check keeps failing, give it a session of its own, for example by starting from a finished model and practising only the last fifteen minutes. The guide on how to explain an ML project in an interview helps with the follow-up questions, and the ML mock interview guide covers full rehearsals across every round.

How long should an ML system design practice session be?

Plan on about 90 minutes. Spend 15 minutes reviewing the framework, 45 minutes on one timed mock problem, a short break and about 25 minutes reviewing the answer against the phases you were supposed to cover. A shorter session can drop the warm-up, but it should never drop the review, because the review is where you find the gap to fix next time.

Should I practise ML system design alone or with a partner?

Do both if you can. Solo sessions build the habit of covering every phase inside the time limit, and a partner adds the follow-up questions and changed requirements that a real interviewer brings. If no partner is available, an AI interviewer or a recording of yourself talking through the design is a reasonable substitute for some of those sessions.

How many ML system design problems should I practise before the interview?

Advice varies, so aim for coverage instead of a fixed count. Most candidates do well to solve at least one ranking or recommendation problem, one classification problem with rare positives, one forecasting or regression problem and one search or retrieval problem under a timer, then repeat whichever type scored worst.

How is ML system design different from general system design?

General system design focuses on storage, APIs and scaling a service. ML system design keeps the serving and scaling questions and adds the parts that are specific to learning from data, such as framing the prediction, choosing labels, avoiding leakage, evaluating offline and online and deciding when to retrain.

Do I need to know how a specific company built its real system?

No. Interviewers grade your reasoning about the problem in front of you, and they rarely expect you to describe their own production stack. Practice problems named after real products are useful because they give a realistic setting with believable scale and latency limits, and you should treat them as practice prompts.

Related guides

Keep reading