System Design Beginner

00  Requirements & Estimation

A design is won or lost before the first box is drawn: pin down what you are building, say out loud what you are not building, and put numbers on the load. Vague requirements produce unfalsifiable architectures.

Step 2 / 2

Same app, now with numbers: 10 million daily active users; each uploads on average 2 photos per day at 2 MB per photo, and views 100 photos per day. Estimate: write QPS, read QPS, new storage per day, and total photo storage after 5 years. Show your working and round aggressively.

Hints
  • A day is ~86,400 seconds; napkin math rounds it to 100,000.
  • Daily events = users x events per user. QPS = daily events / seconds per day.
  • Storage per day = uploads per day x photo size. Five years is roughly 1,800 days.
Your design is reviewed against a hidden rubric.