# A Four-Step Framework — System Design Interview Prep

Source: https://www.skillbyai.com/en/system-design-interview/f-steps

> Scope, high level, deep dive, wrap up.

## Spend time deliberately

A widely used structure: **(1) clarify requirements and scope** (about 5 to 10 minutes), **(2) propose a high-level design** with APIs, data model and main components, agreeing it with the interviewer (10 to 15 minutes), **(3) deep dive** into the most interesting or risky parts, such as scaling the hot path, data partitioning or consistency (15 to 20 minutes), and **(4) wrap up** with bottlenecks, failure handling, monitoring and possible improvements. Estimates fit into step 1 or 2 when they influence decisions.

## A whiteboard template

A layout to reuse in every interview.

```text
1. REQUIREMENTS          functional: ...    non-functional: scale, latency, availability, consistency
2. ESTIMATES             QPS (avg/peak), storage, bandwidth, cache size
3. API                   POST /v1/urls {long_url} -> {code};  GET /{code} -> 301
4. DATA MODEL            table/collection, keys, access patterns
5. HIGH-LEVEL DESIGN     client -> LB -> services -> cache -> DB / queue -> workers
6. DEEP DIVES            partitioning, hot keys, consistency, failure modes
7. WRAP UP               bottlenecks, monitoring, trade-offs, future work
```

## Check in at each step

Ask "does this direction work for you?" before deep dives; interviewers often steer you towards what they want to assess.

**Quiz:** What should come before drawing components?

- [x] Clarifying requirements and scope
- [ ] Choosing a database vendor
- [ ] Writing code
- [ ] Designing the monitoring dashboard

*Answer:* Clarifying requirements and scope. Scope first.
