Back-of-envelope estimator

Interviewers want to see the arithmetic, not the answer. Use this to sanity-check numbers after you have done them by hand.

Numbers worth memorising

  • 1 day ≈ 86,400 s ≈ 10⁵ s. So 1M/day ≈ 12/s, 100M/day ≈ 1,200/s.
  • Memory read ~100 ns, SSD read ~100 µs, same-DC round trip ~0.5 ms, cross-continent ~150 ms.
  • A single Postgres node comfortably serves thousands of simple QPS; Redis ~100K ops/s per node.
  • 1 char = 1 B, UUID = 16 B, a timestamp = 8 B, a typical tweet ~300 B, a 1080p minute ~50 MB.
Average read QPS2.31 K
Average write QPS231
Peak read / write QPS6.94 K / 694
New records per day20.00 M
Storage per day9.31 GB
Storage over 5 years16.60 TB
Read / write bandwidth (avg)1.10 MB/s / 113.03 KB/s
Cache for one day of hot data1.86 GB