Netflix Video Streaming – System Design Interview Preparation
Practice designing a video streaming platform like Netflix. Cover video encoding, adaptive streaming, CDN, and recommendations.
This is a full mock interview round, not a written solution to read through. The AI interviewer poses the Netflix design problem, pushes back on your choices, and asks the follow-up questions a real interviewer would: how the system behaves as traffic grows, where the bottlenecks move, which consistency guarantees you are trading away, and what happens when a component fails. You get structured feedback and a score on requirement gathering, high level architecture, data modelling, scalability and communication at the end of every attempt.
Designing Netflix is a recurring question in High Level Design (HLD) rounds at Google, Amazon, Meta, Microsoft, Netflix and Uber, and at high-growth product companies hiring SDE-2 and above. Working through it out loud - repeatedly, under time pressure - is what separates candidates who know the components from candidates who can defend a design.
What this question is really testing
Moving bytes as close to the viewer as possible before they are requested, and keeping playback state consistent across devices.
Scale to establish before drawing anything
- 200M subscribers, 2 hours a day each - petabytes a day, with a sharp regional evening peak.
- A film at 4K is tens of GB across renditions, and the catalogue is tens of thousands of titles.
- Peak traffic is predictable by region and hour, which is what makes pre-positioning possible.
Core components
- Content pipeline – Ingest, transcode into a rendition ladder, package into segments with a manifest.
- Edge caches inside ISPs – The core idea: appliances in the viewer's own network, filled overnight with what that region will watch.
- Steering service – Tells a client which edge to stream from, by location, load and health.
- Playback state service – Resume position, synced across devices. Small writes, very high volume.
- Recommendation service – Offline-computed, served as a precomputed row set per user.
Trade-offs to defend
- Pre-positioning versus on-demand caching – Pushing content to edges before anyone asks costs storage everywhere and wins on the evening peak. It only works because demand is predictable.
- Per-title encoding – An animated film and a dark thriller need different bitrate ladders. One ladder for everything wastes bandwidth on one and quality on the other.
- Playback position consistency – Last-write-wins is wrong when two devices are open; a vector or a timestamp with device identity is the honest answer.
Follow-up questions to expect
- A new season drops at midnight across 190 countries. What did you do yesterday to prepare?
- An ISP edge appliance fails mid-evening. Where does that traffic go, and does the viewer notice?
- A viewer pauses on their TV and resumes on a phone 30 seconds later. Trace the state.
Continue preparing