teacher
Sign in

Design a Video Streaming Service

A full case study of a YouTube-style platform, covering upload, transcoding pipelines, adaptive bitrate streaming and CDN delivery.

35 min5 interactive

Requirements

A video streaming service lets creators upload videos and viewers watch them on any device and network.

Functional:

  • Upload a video file.
  • Play a video with seek, pause and quality that adapts to the connection.
  • Search and browse by title (metadata only here).

Non-functional:

  • Playback starts in about a second or two and rarely stalls.
  • Works on phones, TVs and browsers over varying bandwidth.
  • Highly available for viewing; uploads may take minutes to become playable.
  • Cost-aware: bandwidth and storage dominate the bill.

Out of scope: recommendations, copyright detection, comments, live streaming (see exercises).

1 of 11