Home › Blog › System Design Mock Interview

Free System Design Mock Interview: A 45-Minute Script and Interviewer Rubric

Run a realistic system design round with a friend, a peer or an AI interviewer: a minute-by-minute script, the prompts to use, a scoring rubric by level and the failure modes to watch for.

A free system design mock interview needs three things you can get without paying: a script that forces the order real design rounds follow (requirements, estimates, API, data model, high-level design, deep dive, trade-offs), an interviewer who knows what to probe, and a rubric to score against. This page gives you a 45-minute script, the prompts the interviewer should use, a scoring rubric by level, free ways to practice and the failure modes that sink otherwise strong candidates.

Why 45 minutes? Meta's own software engineering interview prep post says its design interview is 45 minutes long and that the interviewer typically saves the last five minutes for your questions (the post was last updated in 2022, so check your recruiter's current guide). Other companies run longer: Amazon's interview guide describes loop interviews of 45-60 minutes each. The script below uses 40 minutes of design plus 5 for questions; for a 60-minute round, give the extra time to the deep dive.

The 45-minute system design mock interview script

MinutesPhaseThe candidateThe interviewer checks
0–5RequirementsAsks about users, core features, what's out of scope, and latency, availability and consistency goalsDid they scope before drawing anything?
5–10EstimatesRough requests per second, storage, bandwidth and the read/write ratioDo the numbers drive a decision?
10–14APIThree to five core endpoints or events with their key fieldsDoes the API cover the requirements and nothing extra?
14–18Data modelEntities, keys, access patterns and the choice of storeDoes the store fit how the data is read?
18–28High-level designClients, load balancer, services, stores, caches and queues; walks one request end to endIs there a working path for every core feature?
28–38Deep diveOne or two components in depth: scaling, partitioning, hot keys, failuresDepth, not a tour of more boxes
38–40Trade-offs and wrap-upNames bottlenecks, what changes at 10x, and what to monitorCan they critique their own design?
40–45Candidate's questionsAsks the interviewer two or three real questionsNot scored in this mock

The order matters more than the exact minutes. If the interviewer pulls you into a deep dive early, follow, then come back and close the loop. What you should never do is skip requirements and estimates because you think you already know the answer. For the concepts behind each phase, keep our system design interview cheat sheet open while you prepare, not while you practice.

The script phase by phase, with one example prompt

To make the script concrete, here is how each phase might sound for “design a notification system.” The numbers are assumptions we chose for the example, not real traffic figures. Our full notification system walkthrough goes deeper.

Requirements (0–5)

Ask before you draw: which channels (push, email, SMS, in-app)? Do users set preferences? Is there a broadcast case, such as one message to every user? What matters most: low latency, or never losing a notification? Write the answers down where the interviewer can see them, and say what you're leaving out of scope.

Estimates (5–10)

Assume 10 million daily active users receiving 20 notifications a day: 200 million a day, or about 2,300 per second on average (200 million divided by 86,400 seconds). Plan for peaks several times higher. At roughly 1 KB per stored notification, that's about 200 GB a day, or around 73 TB a year. Then say what the numbers mean: writes are steady but bursty, so you'll want a queue between intake and delivery. The free system design cheat sheet tool has a capacity calculator for this step.

API (10–14)

Keep it small: POST /notifications with a user ID, template, channel and priority; GET /users/{id}/notifications?cursor= for the in-app inbox; PUT /users/{id}/preferences. Add an idempotency key on the send call now; you'll need it in the deep dive.

Data model (14–18)

Notifications are read by user and time, so key them by user ID and creation time in a store that handles high write volume. Preferences are small, read on every send and rarely updated, so a relational table with a cache in front is enough. A delivery log records each attempt and its status.

High-level design (18–28)

Draw the request path: the API validates the request and checks preferences, writes the notification, and puts a message on a per-channel queue. Channel workers pull from the queues and call the push, email or SMS provider, then record delivery status. Walk one notification through every box out loud.

Deep dive (28–38)

Pick the riskiest parts: retries with backoff when a provider fails, deduplication using the idempotency key so a retry never sends twice, per-user rate limits, and a separate high-priority queue so a password reset isn't stuck behind a marketing broadcast.

Trade-offs (38–40)

Name what you chose and what it cost: at-least-once delivery with deduplication instead of exactly-once, eventual consistency for the inbox, and SMS as the expensive channel you'd limit. Close with what you'd monitor, such as queue depth, provider error rates and delivery latency.

The interviewer's side: how to run the mock

Whoever plays the interviewer needs a few rules, or the mock turns into a friendly chat:

Prompts to use as the interviewer, roughly in order:

  1. “What's out of scope for this version?”
  2. “Your estimate says this many writes per second. What does that change in the design?”
  3. “Walk me through exactly what happens when a request comes in.”
  4. “This database node goes down. What happens to in-flight requests?”
  5. “Traffic jumps 10x for a day. What breaks first?”
  6. “How do you make sure the same action doesn't happen twice?”
  7. “What would you monitor, and what should page someone at night?”
  8. “If you had another week, what would you change?”

For the prompt itself, rotate through problems with existing walkthroughs so the candidate can compare afterward. A warm-up such as a URL shortener or a rate limiter suits a first mock; a news feed or the notification system suits mid-level practice; a distributed key-value store stretches senior candidates.

Interviewer rubric for a system design mock interview

Score each dimension as below the bar, at the bar or above the bar. This is our rubric for practice, built from the phases above; companies don't publish their internal scoring, and expectations vary by level and team.

DimensionBelow the barAt the barAbove the bar
Requirements and scopeStarts drawing immediatelyAsks core questions, states scopeFinds the requirement that shapes the whole design
EstimationSkips it, or numbers go unusedReasonable numbers, stated assumptionsNumbers decide a specific component choice
API and data modelMissing or unrelated to the featuresCovers the core flows; store fits access patternsAnticipates pagination, idempotency, schema change
High-level designBoxes with no request pathEvery core feature works end to endClean separation that makes later scaling easy
Deep diveStays broad, lists buzzwordsOne component explained in real depthTwo deep dives, including failure handling, unprompted
Trade-offsPresents one option as the only answerNames alternatives when askedRaises trade-offs and costs before being asked
CommunicationLong silences, interviewer has to driveThinks out loud, checks inDrives the session and adapts well to the curveball

Level changes what “at the bar” means. As a rough guide, a mid-level candidate should produce a complete, working design and one solid deep dive with some prompting. A senior candidate should drive without prompting, cover failure modes on their own and handle the curveball calmly. Staff-level candidates are usually also expected to talk about cost, operations and how the system evolves. Ask your recruiter what your level's design round emphasizes.

Free ways to practice a system design mock interview

An AI mock is good for volume and for drilling the order of the phases. It doesn't replace a person who interrupts, challenges your diagram and asks why. Mix both: AI rounds during the week, and a person at least once before the real thing. Our system design interview hub covers the core topics in more depth.

Tip: Say the phase out loud as you enter it: “Let me pin down requirements first,” then “Now some rough numbers.” It keeps you on the script and shows the interviewer you have a method.

Failure modes to watch for in your mocks

Failure modeWhat it looks likeFix
Drawing before scopingA full diagram by minute three, then a requirement that breaks itSpend the first five minutes on questions only
Estimates that change nothingCareful math, then the same design you'd draw anywayEnd every estimate with “so this means…”
Components without reasons“Add a cache, add Kafka” with no explanationGive each box one sentence: what it's for and why here
Broad, never deepTwelve boxes, none explained past one linePick one component and go three questions deep
Silent thinkingLong pauses while drawingNarrate decisions, even half-formed ones
Defending instead of adjustingArguing with the curveballAccept the new constraint, then rework the affected part
No time for trade-offsStill drawing at minute 40Set a timer for minute 35 and start wrapping up
Ignoring failureEvery component is assumed to stay upFor each store and service, say what happens when it fails

How many mocks, and in what order

There's no official number. A practical plan is six mocks over three weeks:

  1. Week 1: two warm-up prompts. Goal: hit every phase in order and finish on time. Score only requirements, estimation and communication.
  2. Week 2: two mid-level prompts. Goal: one real deep dive per session, including what happens when a component fails.
  3. Week 3: two harder prompts with a curveball. Goal: adapt without restarting. Make at least one of these with a person.

After each mock, write down the lowest-scoring rubric row and make it the only goal for the next session. Redo a prompt you struggled with a week later, without reading its walkthrough first.

Practice a system design round out loud, free

Set the mix to system design, answer the question out loud, and get a score out of 10 with what to fix, a model answer and the follow-up a real interviewer would ask. Free for 15 minutes a day, no credit card.

Try a free AI mock interview

FAQ

How long is a system design mock interview?

Plan for 45 minutes: about 40 minutes of design and 5 for your questions. Meta’s prep post describes a 45-minute design interview, and Amazon’s guide describes loop interviews of 45 to 60 minutes, so ask your recruiter and give any extra time to the deep dive.

Can I do a system design mock interview for free?

Yes. Use the script and rubric on this page with a friend or colleague, try a free peer mock platform, record yourself solo, or use CoPilot Interview’s free plan, which includes Mock Interview with system design questions for 15 minutes every day.

What do interviewers look for in a system design interview?

Broadly: whether you scope the problem, use estimates to make decisions, produce a design that works end to end, go deep on at least one component, discuss trade-offs and failures, and communicate clearly. Expectations rise with level, so ask your recruiter what your round emphasizes.

How many system design mock interviews should I do?

There is no official number. Six mocks over three weeks, across different prompts and with at least one session in front of a real person, is a practical plan if you already know the core concepts.

Can an AI run a system design mock interview?

Yes, for practice. CoPilot Interview’s Mock Interview mode reads a system design question aloud, listens to your spoken answer and scores it out of 10 with what to fix, a model answer and a follow-up. It does not replace a person challenging your diagram, so mix both.

What should I use to draw in a mock system design interview?

Practice on the same tool your interview will use, and ask your recruiter if you are unsure. Google’s virtual interview candidate guide, for example, points system design candidates to Google Drawings. For solo practice, paper or a whiteboard photo works too.