← Back to list

Back-of-the-Envelope Estimation: The Secret Sauce for System Design Interviews

When you’re in a system design interview, you often get asked:

Deepak PM · 2025-07-08 17:52 · 0 claps · 2.1 min read
#system-design-interview #system-design-concepts #back-of-the-envelope #software-engineering #system-design-course
Open on Medium ↗

Back-of-the-Envelope Estimation: The Secret Sauce for System Design Interviews

When you’re in a system design interview, you often get asked:

“How many servers would you need to handle 100 million users?”

This is where back-of-the-envelope estimation becomes your best friend.

It’s a quick, approximate way to calculate:

✅ Load (requests, reads, writes) ✅ Storage (data per day/month/year) ✅ Resources (servers, CPUs, network)

All in under 5 minutes.

Why Do Back-of-the-Envelope Estimation?

You don’t need perfect numbers during interviews. You need approximations to show your thinking.

It proves you can:

✅ Think at scale ✅ Plan capacity ✅ Make trade-offs

Handy Conversion Table to Remember

Memorize this to quickly convert between units during your calculation.

What Should You Estimate?

Focus on three things:

1️⃣ Load Estimation 2️⃣ Storage Estimation 3️⃣ Resource Estimation

Let’s see it in action using Twitter as an example.

Example: Back-of-the-Envelope Estimation for Instagram

1️⃣ Load Estimation

Assume:

  • Instagram has 500 million Daily Active Users (DAU)
  • Each user uploads 2 photos per day

Writes per day:

500 million users * 2 photos = 1 billion uploads/day

Reads per day:

Assume each user scrolls and views 200 posts/day:

500 million users * 200 posts = 100 billion reads/day

2️⃣ Storage Estimation

Types of posts:

  • All are image posts
  • Assume average photo size = 2 MB

Uploads/day: 1 billion photos

Storage/day:

= 1 billion photos * 2 MB/photo
= 2 billion MB

Convert to higher units:

2 billion MB = 2 million GB = 2,000 TB = 2 PB/day

So, Instagram would need approximately 2 PB of storage per day for uploads.

3️⃣ Resource Estimation

Calculate CPU and servers:

Assume:

  • 50,000 requests/second (including feed requests, uploads, likes, comments)
  • Each request takes 10 ms CPU time

Total CPU time per second:

50,000 req/s * 10 ms = 500,000 ms/s CPU time

If 1 CPU core can handle 1000 ms/s:

Total cores needed = 500,000 / 1000 = 500 cores

If 1 server = 8 cores:

Total servers needed = 500 / 8 = 62.5 ≈ 63 servers

✅ Add a load balancer in front, and you’re ready to handle requests at Instagram’s scale.

Key Takeaways

Back-of-the-envelope estimation helps you quickly reason about system scalability. ✅ Use approximations to avoid getting stuck in complex math. ✅ Always focus on load, storage, and resource estimation. ✅ Show your clear, scalable thinking during interviews.

Practice This Before Interviews

Next time you prepare for a system design interview:

📝 Pick an app you use daily (Instagram, WhatsApp, YouTube). ⚡ Try doing load, storage, and resource estimation in 5 minutes. 🎯 Focus on clear reasoning, not perfect accuracy.

Let’s Connect

💬 Have a system design topic you’d like me to explain next? Drop it in the comments! ✨ Follow me here on Medium for practical developer stories, coding breakdowns, and system design insights. 🚀 Let’s level up your system design prep together!


메타데이터
post_id
94ea2f06e1a3
slug
back-of-the-envelope-estimation-the-secret-sauce-for-system-design-interviews-94ea2f06e1a3
url
https://medium.com/@deepakpm23/back-of-the-envelope-estimation-the-secret-sauce-for-system-design-interviews-94ea2f06e1a3
canonical_url
https://medium.com/@deepakpm23/back-of-the-envelope-estimation-the-secret-sauce-for-system-design-interviews-94ea2f06e1a3
author_url
https://medium.com/@deepakpm23
status
ok
fetched_at
2026-07-09 06:11:55