Instagram

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

Complete & continue

Defend it out loud

The AI interviewer will probe your design for Instagram and score it.

Mock interview