Challenges /

Design YouTube

Intermediate

On the roadmap:Interview Ready · step 7: Practise under pressure

Design a video sharing platform with uploads, search and comments.

Discuss the upload pipeline, storage layout, CDN and caching, metadata database scaling, search and counters.

Requirements

  • Upload videos (up to several GB) with resumable uploads
  • Transcode into multiple resolutions
  • Watch, like and comment
  • Search videos by title and description

Scale & constraints

  • 500 hours of video uploaded every minute
  • 5B views per day
  • Read-heavy with viral spikes
Hints (try without them first)
  • Why is transcoding asynchronous, and how do you track job state?
  • How do you handle a video that suddenly goes viral?
  • Where do view counters live and how accurate must they be?

Useful reading

Your solution

Self-check: did you address each requirement?

0/200 characters minimum