YouTube
Problem Statement
Requirements
Functional Requirements
Non-Functional Requirements
Capacity Estimation
Traffic Estimates
Upload Estimates
Storage Estimates
Bandwidth Estimates
API Design
1. Upload Video
2. Stream Video
3. Search Videos
4. Like/Comment
High-Level Architecture
Detailed Component Design
1. Video Upload & Processing Pipeline
Video Transcoding
Distributed Transcoding (SDE-3 Deep Dive: DAG)
2. Video Streaming Architecture
3. Database Schema
Videos Table (PostgreSQL)
Comments Table (Sharded by video_id)
View Counts (Redis + Batch Processing)
4. Search Service (Elasticsearch)
5. Recommendation Engine
Scalability Strategies
1. Database Sharding
2. Caching Strategy
3. Write-Heavy Optimization (Likes/Views)
Advanced Features
1. Live Streaming
2. Content Moderation
3. Monetization
Trade-offs & Optimizations
Aspect
Choice
Trade-off
Interview Discussion Points
Last updated