📸Instagram / Photo Sharing
0 nodes · 0 edgesHint 1 — locked
Hint 2 — locked
Hint 3 — locked
📸
Instagram / Photo Sharing
● Intermediate30–45 min
Problem
Build a photo-sharing platform like Instagram. Users upload photos, follow other users, and see a personalized feed of recent photos from people they follow. The system must handle 1B users, millions of photo uploads per day, and serve feeds to hundreds of millions of daily active users.
Functional Requirements
- Upload photos with captions, hashtags, and location tags
- Follow/unfollow users; view followers/following lists
- Generate a personalized home feed (recent photos from followed users)
- Like and comment on photos
- Search by hashtag and username
Non-Functional
- 1B users, 100M DAUs, 50M photo uploads/day
- Feed load < 200 ms p99
- Photo upload < 2 s for the originating user
- 99.9% availability; reads > writes by 10:1
Prerequisites
CDNObject storageFan-out patternsSocial graphs
📸
Design your Instagram / Photo Sharing
Drag components from the Brief panel → switch to Components tab
Press enter or space to select a node. You can then use the arrow keys to move the node around. Press delete to remove it and escape to cancel.
Press enter or space to select an edge. You can then press delete to remove it or escape to cancel.
UML
15
Needs Work
Click a dimension to see what's missing. Score updates as you design.
Speed
RPS
Hit Play to start simulation00:00