System Design: Netflix

<p>Let&rsquo;s design a&nbsp;<a href="https://netflix.com/" rel="noopener ugc nofollow" target="_blank">Netflix</a>&nbsp;like video streaming service, similar to services like&nbsp;<a href="https://www.primevideo.com/" rel="noopener ugc nofollow" target="_blank">Amazon Prime Video</a>,&nbsp;<a href="https://www.disneyplus.com/" rel="noopener ugc nofollow" target="_blank">Disney Plus</a>,&nbsp;<a href="https://www.hulu.com/" rel="noopener ugc nofollow" target="_blank">Hulu</a>,&nbsp;<a href="https://youtube.com/" rel="noopener ugc nofollow" target="_blank">Youtube</a>,&nbsp;<a href="https://vimeo.com/" rel="noopener ugc nofollow" target="_blank">Vimeo</a>, etc.</p> <h2>What is Netflix?</h2> <p>Netflix is a subscription-based streaming service that allows its members to watch TV shows and movies on an internet-connected device. It is available on platforms such as the Web, iOS, Android, TV, etc.</p> <h2>Requirements</h2> <p>Our system should meet the following requirements:</p> <h2>Functional requirements</h2> <ul> <li>Users should be able to stream and share videos.</li> <li>The content team (or users in YouTube&rsquo;s case) should be able to upload new videos (movies, tv shows episodes, and other content).</li> <li>Users should be able to search for videos using titles or tags.</li> <li>Users should be able to comment on a video similar to YouTube.</li> </ul> <h2>Non-Functional requirements</h2> <ul> <li>High availability with minimal latency.</li> <li>High reliability, no uploads should be lost.</li> <li>The system should be scalable and efficient.</li> </ul> <h2>Extended requirements</h2> <ul> <li>Certain content should be&nbsp;<a href="https://en.wikipedia.org/wiki/Geo-blocking" rel="noopener ugc nofollow" target="_blank">geo-blocked</a>.</li> <li>Resume video playback from the point user left off.</li> <li>Record metrics and analytics of videos.</li> </ul> <h2>Estimation and Constraints</h2> <p>Let&rsquo;s start with the estimation and constraints.</p> <p><em>Note: Make sure to check any scale or traffic-related assumptions with your interviewer.</em></p> <p><a href="https://medium.com/@karan99/system-design-netflix-6962b4f6222">Click Here</a></p>
Tags: Design Netflix