System design interview questionHardDistributed Architecture
Design a Video-on-Demand Platform like YouTube or Netflix
Design YouTube/Netflix-style VOD: upload video, process it, and stream playback to many viewers via CDN — not a live ingest path.
Interview scope
Upload: Client → Gateway/LB → App → Object Storage + DB; Queue for transcode workers. Watch: Client → CDN (and CDN → Object Storage). No Client → DB for video bytes.
Functional requirements
- Upload a video and track processing status.
- Store metadata (title, owner, thumbnails pointers).
- Viewers play encoded segments via CDN/edge.
Scale and quality goals
- Viewer egress must scale via CDN, not one App Server.
- Heavy bytes live in Object Storage.
- Transcoding is async (queue + workers).
Capacity assumption
Design for this scale
Assume ~5M video views/day peak hours push multi-Gbps egress — CDN + object storage are mandatory.
Practice more than a diagram
Place components on the Froquiz canvas, connect the data flow, and see which decisions the scenario-specific review finds missing. The full exercise and review unlock with Premium.
Explore Premium →