Back to roadmap
Module 10 · End-to-End Design DrillsDay 09345 min

Drill: Instagram

Photo upload pipeline + feed + likes — visually heavy.

Day 093

Drill: Instagram

Client
client
S3 raw
datastore
Transcoder
service
S3 variants
datastore
CDN
edge
Signal path
Upload pipeline
Client
client
flow
S3 raw
datastore
S3 raw
datastore
flow
Transcoder
service
Transcoder
service
flow
S3 variants
datastore
Memory hook

Instagram: photo upload pipeline + feed + likes

Mental model

compose the pieces into a design story

Design lens

Transcoding is GPU-heavy; queue for spikes.

Recall anchors
UploadTranscodeFeed

Why it matters

Instagram-like systems combine huge media pipelines (upload, transcode, deliver) with social feed mechanics. Object storage, CDNs, and async workers carry most of the weight.

Deep dive

Upload via presigned S3 URL; backend gets a notification.

Transcoder workers create multiple sizes; write to S3.

CDN serves images globally.

Feed: similar to Twitter, with media references not blobs.

Demo / scenario

Upload + post + view.

  1. Client uploads to S3 with presigned URL.
  2. Lambda triggers transcoder.
  3. DB stores post with media references.
  4. Feed fan-out shows post; CDN delivers media.

Tradeoffs

  • Transcoding is GPU-heavy; queue for spikes.
  • Multiple image sizes amortize bandwidth.
  • Aspect-ratio variants matter for UX.

Diagram

Client
S3 raw
Transcoder
S3 variants
CDN
Upload pipeline.

Mind map

Check yourself

Loading quiz…

Sources & further reading