✏️ Explanatory Question

How do you scope a system design problem when given only 45 minutes?

👁 8 Views
📘 Detailed Answer
🟢 Easy
No previous question
No next question
💡

Answer with Explanation

Budget the time explicitly, and say the budget out loud at the start. It signals that you have done this before, and it gives the interviewer a chance to redirect you early.

A workable 45 minute budget

  • 5 min - Requirements. Two or three core features, scale assumptions, one or two non-functional targets, and the out-of-scope list.
  • 5 min - Estimation. QPS, storage, bandwidth. Only enough to justify later choices - the point of "250,000 writes per second" is that it rules out a single database, not the number itself.
  • 10 min - High-level design. Boxes, arrows, a short API sketch and the data model. Draw the happy path first.
  • 15 min - Deep dive. One or two components, either the ones the interviewer picks or the one you flagged as hardest. This is the segment that determines your level.
  • 10 min - Bottlenecks and trade-offs. Failure handling, scaling the next 10x, what you would do with more time, and questions for them.

The scoping rule: pick the two or three features that define the product and defer the rest. For Twitter, posting a tweet and loading a timeline are essential; direct messages, ads, trending topics and search are not. For Uber, requesting a ride and matching a driver are essential; pricing, ratings and driver onboarding are not.

How to choose which features to keep. Keep the feature that generates the most load, and the feature that is hardest to build. Those two are where the design work actually is. A feature that is just a CRUD endpoint adds nothing to the discussion no matter how central it is to the product.

Managing the clock during the interview

  • Glance at the time at each transition and say where you are: "That is the high-level design; I have about 15 minutes, so I will go deep on the timeline fan-out unless you would prefer something else."
  • If you are running behind, cut breadth rather than depth. Two components explained well beat six listed quickly.
  • If the interviewer pulls you into a deep dive early, follow them - their signal overrides your plan. The budget is a default, not a script.
  • Leave two or three minutes at the end. Being cut off mid-sentence reads worse than finishing with a clean summary.

If the format is different: a 60 minute interview usually means a longer deep dive rather than more features, and a 30 minute screen means skipping formal estimation and stating rough numbers inline.

No previous question
No next question