Design an Async Video Recording & Sharing Platform
Problem
Design a system to record, upload, transcode, and share async videos with instant shareable links.
Requirements
Functional:
- Record in browser; upload (resumable)
- Transcode to multiple resolutions
- Instant shareable link (watch while processing)
- View analytics and comments
Non-functional:
- Millions of videos, large files
- Fast time-to-share
- Reliable transcoding
Discussion points
- Resumable chunked upload
- Transcoding pipeline (queue + workers, multiple renditions)
- Instant-play (progressive availability) and CDN
- Storage tiers
- View tracking and comments
added …