Upload, process, and serve photos at scale with follows, likes, and a feed.
Medium45 minMedia pipelineCDNFeed
Instagram combines three systems: a media upload and processing pipeline, a social graph, and a feed. A strong answer focuses on getting bytes in and out efficiently (presigned uploads, transcoding, CDN) and reuses news-feed ideas for the timeline.
Clarify requirements
Functional
- Upload photos (and short videos) with captions.
- Follow users; view a home feed of followed users' posts.
- View a user's profile grid.
- Like and comment (counts shown on posts).
- Out of scope: stories, DMs, reels ranking, search (mention as extensions).
Non-functional
- 500M DAU; 100M uploads/day.
- Feed loads in < 300 ms; images load fast globally.
- Uploads must be durable once acknowledged; processing can take seconds.
- Read-heavy: views vastly outnumber uploads.
- Eventual consistency acceptable for feeds, counts.
Try it first
Set a timer, sketch your own design on paper, then compare it with the reference walkthrough.
45:00
Defend it out loud
The AI interviewer will probe your design for Instagram and score it.