System design concepts
The ten words an interview expects you to define, in the pairs people run together.
Ten concepts in five pairs, each card carrying a definition, a worked example and the thing people get wrong. Latency is how long one request takes and throughput is how many finish, so forty calls against a 400ms p99 leave a third of page loads waiting on the tail while twenty workers change the rate and not the job. Scalability is whether more hardware buys anything, and ten more app servers double the reads and leave the write ceiling exactly where it was; horizontal scaling is the move that follows, which is why a session in process memory logs a user out on every other click. Availability is the number, three nines being 43 minutes a month and two of them in series being 99.8 percent; fault tolerance is the machinery that keeps it, and a standby nobody has ever promoted is a guess. Consistency is whether a read that follows a write sees it, and CAP is the choice a split network forces, which you only make while it is split. And a single point of failure decides whether you are up at all, where a bottleneck only decides how fast you are: fix the 840ms query and the payment provider becomes the bottleneck instead.
← All cheatsheets