HV

System Design

System design is where SDE 2 interviews are won or lost. Use the STAR-D framework. Think in trade-offs, not just solutions.

// STAR-D Framework (use for every system design)
S
Scope
Clarify requirements, features, constraints
T
Traffic
Estimate QPS, storage, bandwidth
A
API
Design endpoints and data contracts
R
Rough Architecture
High-level components
D
Deep Dive
Bottlenecks, scale, trade-offs

// SDE 2 System Design Interview Tips

Start with requirements

Always clarify: functional requirements (what it does) and non-functional (scale, latency, availability, consistency). Never skip this step.

State your assumptions

Say it explicitly: 'I'll assume 100M DAU, 10:1 read-write ratio, p99 latency < 200ms'. Interviewers want to see how you think about constraints.

Think in trade-offs

There's no perfect design. Every choice has a trade-off. 'I'm choosing eventual consistency here because it gives us better write throughput at the cost of stale reads for ~100ms.'

Acknowledge bottlenecks

Proactively say 'The database is the bottleneck here. I'd add read replicas first, then shard if needed.'

Scale progressively

Don't jump to distributed immediately. Single server โ†’ vertical scale โ†’ horizontal scale โ†’ sharding โ†’ microservices.

Know your numbers

Instant recall: 1 million = 10โถ, 1B = 10โน. 100K seconds/day. 10TB for 1B 10KB records. See Fundamentals page.