Code Room
System designMedium
Question
Design photo storage for a social product: users upload billions of photos, each original generating several derived sizes (thumbnail, feed, full), reads vastly outnumber writes and are heavily skewed toward recent uploads, and most photos are never viewed again after their first week. You need cheap storage at the long tail, fast delivery of hot photos, and an efficient way to manage the many small derived files. How do you store, serve, and tier this?
What a strong answer looks like
Clarify scale and constraints first. Propose a clean component breakdown, then go deep on the hard parts — data model, bottlenecks, consistency, failure modes — and name the trade-offs you are making.
Learn the concepts
Loading whiteboard…
Run or narrate your approach, then ask the coach.