Lesson 1 / 32
What is System Design?
Defining components, data, and their interactions to meet goals.
The definition
System design is deciding the architecture, components, interfaces, and data of a system so it meets its functional and non-functional goals — like scale, latency, and availability.
Functional vs non-functional
Functional: what the system does (post a tweet, place an order). Non-functional: how well it does it (99.9% uptime, p99 < 200ms, 10k writes/sec).
City planning
Designing a system is like planning a city: roads (network), power (compute), water (data), and zoning rules (constraints). You can't retrofit a highway easily — plan the load first.
Start with requirements
In an interview, never jump to boxes and arrows. Spend the first few minutes clarifying scope, users, and scale — the design flows from there.