Enough math to guide the design, not enough to derail it.
Which number would change an image-sharing design first: users, writes, reads, storage, or peak traffic?
Before reading, guess the system shape before calculating. Then check whether the numbers support it.
Every later scaling chapter depends on estimates that guide cache, shard, queue, and storage choices.
You usually do not need exact numbers in a system design interview. You need enough numeric shape to know whether you are building a desk lamp, a warehouse, or a stadium.
Good estimates answer questions like: is this hundreds of requests per second or hundreds of thousands? Is storage in gigabytes, terabytes, or petabytes? Is the system read-heavy or write-heavy? The goal is not to be exact. The goal is to make the next design decision defensible.
The strong version ties assumptions to numbers and numbers to architecture. That is the whole point of the chapter.
Estimation is about exact math and impressive precision.
Estimation is about order of magnitude and design direction.
Convert each number into a decision: cache, CDN, partition, async processing, or keep simple.
| Estimation style | Good when | Weak when | Interview line |
|---|---|---|---|
| Skip estimation entirely | The problem is tiny and the numbers clearly do not matter much. | Architecture depends on scale and you are guessing blindly. | I want at least rough order-of-magnitude estimates so the design stays grounded. |
| Rough order-of-magnitude estimation Default | You need fast guidance for architectural choices. | You stop before turning the numbers into implications. | I only need enough math to decide whether caching, CDN, or sharding are justified. |
| Highly precise arithmetic | Exact capacity planning is the actual task. | The interview only needs direction and you burn time on detail. | I would rather round hard and keep moving than spend five minutes pretending the inputs are exact. |
| Average-only estimation | Traffic is stable and burstiness is low. | Peak traffic drives the real bottleneck. | I need a peak estimate too, because average load hides the actual pressure points. |
Do not jump straight from reading to a full answer. First see the shape, then complete part of it, then answer alone.
I would say: "If reads are far larger than writes, I will optimize the read path before complicating the write path."
For image sharing, estimate daily writes and daily reads, then write one architecture implication.
Use rough numbers only. Stop when the next design decision is clear.
Before moving on, turn recognition into production. Close the model answer, answer from memory, then retry one small slice.
Say the chapter's core idea without looking. Then name one related idea from an earlier chapter.
Change one constraint in the practice prompt and answer again in half the time.
Use the rubric to pick one dimension below 3, then retry only that dimension.
QPS, storage, bandwidth, peak load. Not decorative arithmetic.
Peak traffic often decides what breaks first.
That is where the engineering judgment shows up.