What is a system design interview, and what are interviewers evaluating?
A system design interview asks you to design a real-world system (URL shortener, chat, feed, etc.) on a whiteboard or shared doc. Interviewers evaluate:
- Structured thinking — clarify requirements before jumping to boxes.
- Trade-off reasoning — why this DB, why cache here, what breaks at scale.
- Scalability & reliability — bottlenecks, failure modes, redundancy.
- Communication — narrate assumptions, ask questions, iterate.
At 2–4 YOE, depth on every component isn't expected — a clear framework and sensible choices matter more than memorized architectures.