Study Notes
Note

Mobile System Design, A 5 Step Interview Framework

Five ordered steps turn an open-ended prompt into a controlled, 45-minute conversation, so neither you nor the interviewer gets lost.

8 min read
Mobile System Design · Chapter 02

Five ordered steps turn an open-ended prompt into a controlled, 45-minute conversation, so neither you nor the interviewer gets lost.

🧭
How to read this page Sections are ordered the way you'd actually run an interview, front to back. Anything marked + is context added beyond the source to fill a gap or make a step concrete. The two figures are original diagrams, not copies of the source.
1

Structure is what keeps the interview from drifting#

Coding interviews have a single correct answer to converge on. System design does not, it invites many valid solutions, so the risk is a rambling conversation with no clear through-line. A fixed framework removes that risk: it gives you a default order to work in and a shared map the interviewer can follow.

The payoff is signal. When you move through predictable phases, the interviewer can tell where you are and judge how you think, instead of spending energy figuring out what you're even doing. The five steps below are the high-level shape; later chapters apply them to concrete apps.

2

The five steps, and the one loop that matters#

The flow is sequential with a single deliberate exception: architecture and deep dive form a loop. You draw the high-level design, dive into a component, learn something, and come back to revise the diagram. That back-and-forth is the point, not a detour.

1 Scope the problem 2 API design 3 High-level architecture 4 Design deep dive 5 Wrap-up iterate
Figure 1 — The framework runs left to right, but steps 3 and 4 form a refinement loop: architecture informs the deep dive, and the deep dive sends you back to revise the architecture.
3

Step 1 · Turn a vague prompt into a defined problem#

Prompts arrive broad on purpose, "Design a news feed app," "Design a pagination library." Your first job is to draw the boundary: what's in scope, what's out, and what you're free to assume. The interviewer's answers steer every technology choice and trade-off that follows, which is why no two interviews from the same prompt look alike.

Ask targeted questions across three angles. You're not trying to ask everything, you're picking the few clarifications that most change the design.

What are we building?

Surfaces functional vs. non-functional requirements and what's explicitly out of scope.

  • Which features, screens, or critical user journeys are in scope?
  • Are we pre-fetching data? Is authentication part of the design?

Who are we building for?

Pins down scale, usage patterns, and how performant the solution must be.

  • How many daily active users, and what's the expected growth?
  • MVP or final product?
  • One region or worldwide? Used at home, or on a moving train?

What are the constraints?

Fixes the system boundary and narrows technology choices.

  • Which platforms, iOS, Android, or both?
  • Any existing systems or APIs the app must integrate with?
💡
State your assumptions out loud When an answer implies something about the rest of the system, make the reasonable assumption and say it plainly. Voicing it lets the interviewer correct you early instead of at the end.
📌
Reference these answers later Everything the interviewer tells you here becomes justification for choices you make in steps 2 through 4. When you defend a trade-off, tie it back to a requirement stated in this step.
4

Step 2 · Nail the contract before the internals#

The API is the contract between your client and everything it talks to. Settling it early aligns your mental model with the interviewer's and gives the rest of the design something solid to build on.

If you're designing…Define
An app + backendThe communication protocols suited to each use case, plus the concrete endpoints involved.
A mobile libraryThe public API surface, how host apps initialize, configure, and call into your library.

Alongside the endpoints or public API, sketch the data models that flow through them, JSON payloads, Swift structs, Kotlin data classes, or protocol buffers where efficiency matters. The models should make the data's structure and relationships obvious.

📦
Protocol buffers, briefly+ Protobuf is a compact binary serialization format from Google. It encodes messages far smaller than JSON and is worth naming when payload size or parse speed matters on constrained mobile networks.
5

Step 3 · Prove the end-to-end flow with a diagram#

With the contract set, draw a high-level client architecture showing how the pieces fit. The diagram does two jobs: it confirms you have a complete path from user action to result, and it exposes the interesting spots worth examining more closely.

As you draw, flag components you expect to unpack in the deep dive. Those flags become your agenda for step 4.

MOBILE CLIENT 1 UI layer 2 Logic / Repository Local cache 3 Network layer NETWORK 4 Backend API 5 Database
Figure 2 — A generic shape you can adapt per prompt+: UI → logic/repository → network, crossing into a backend that owns the database. The cache short-circuits repeated reads. The exact layers depend on the app.

The source describes this step conceptually without a fixed reference architecture; Figure 2 is an illustrative layering to make the step concrete.

6

Step 4 · Go deep where it counts#

This is where you earn the strongest signal. Work with the interviewer to spot bottlenecks and pull apart two to three components in real detail. Two to three is a target, not a rule, adjust to the problem.

  • Pick the right components. Follow the flags you raised in step 3 and the interviewer's cues about what interests them.
  • Keep refining the architecture. As decisions emerge, update the diagram so it always reflects the current design, this is the loop from Figure 1 in action.
  • Manage the clock across topics. If the interviewer is curious about several things, split your time so each gets real attention rather than one swallowing the rest.
⏱️
Read the room The interviewer's questions and reactions are your steering signal. Depth on the topics they care about beats exhaustively covering topics they don't.
7

Step 5 · Close with judgment, not defensiveness#

Optional, and only if time allows, but a strong wrap-up shows you think about a design's limits, not just its happy path. Four moves:

MoveWhat it signals
Summarize decisionsRecap the key trade-offs after a dense discussion so the interviewer leaves clear on your reasoning.
Show critical thinkingWhen asked about improvements, don't defend the design as perfect, name where it could evolve. Self-awareness reads as maturity.
Address edge casesRaise failure points and error paths you hadn't covered, proof you think about reliability, not just the happy path.
Consider future scaleDiscuss growth in users and in team size. It shows you weigh technical and organizational scaling together.
8

Where the 45 minutes actually go#

You have 45 to 60 minutes and a lot of ground. A rough budget keeps you from spending the whole session scoping or running out of time before the deep dive. The deep dive gets the biggest slice by design, it's where the strongest signal lives.

StepBudgetFocus
1 · Scope5–10 minFully understand the problem and set its boundary.
2 · API5–10 minHow the app talks to the backend; core data models.
3 · Architecture10–15 minMain components and how they connect.
4 · Deep dive15–20 minThe hardest technical challenges and implementation detail.
5 · Wrap-up0–5 minRecap decisions; discuss improvements and trade-offs.
🎚️
Guidelines, not a stopwatch Flex the budget to the problem and the interviewer's interests. The goal is to explore the important areas while still finishing a complete design inside the time limit.
9

Recap#

STRUCTUREA fixed order converts an open-ended prompt into a controlled conversation and gives the interviewer clear signal.
SCOPE FIRSTClarify what/who/constraints, state assumptions aloud, and reference those answers when defending later choices.
CONTRACT NEXTLock the API and data models before internals, so the rest of the design has firm ground.
DIAGRAM TO VALIDATEThe architecture proves an end-to-end flow and flags what deserves a deep dive.
LOOP 3↔4Deep dives feed back into the diagram; keep both in sync as decisions land.
CLOSE WITH LIMITSWrap up by naming edge cases, improvements, and future scale, not by defending perfection.
🎯
The single idea underneath it all A system design interview isn't a test of one right answer, it's a demonstration of disciplined thinking. The framework exists so your judgment, not the chaos of an open prompt, is what the interviewer sees.
Rewritten in original wording from ByteByteGo's Mobile System Design Interview, Chapter 02, "A framework for Mobile SD interviews." All diagrams are original SVGs, not reproductions of the source images. Passages marked + add context beyond the source. This chapter contains no external references or further-reading list, only site navigation links, so no further-reading section is included and no external links were verified. Verified live on August 13, 2026.