System Design Interview Questions - Medium

Medium-level system design interview questions covering complex distributed systems.

Q1: Design Twitter/X.

Answer:

Requirements

  • Post tweets (280 chars)
  • Follow/unfollow users
  • Timeline (home feed)
  • Search tweets
  • Trending topics
  • 500M users, 100M DAU

Architecture

Tweet Flow

Timeline Generation

Fanout Strategies:

Database Schema


Q2: Design Instagram.

Answer:

Requirements

  • Upload photos/videos
  • Follow users
  • Feed with posts
  • Like/comment
  • Stories (24h expiry)
  • 1B users, 500M DAU

Architecture

Upload Flow

Feed Ranking


Q3: Design Uber/Lyft.

Answer:

Requirements

  • Match riders with drivers
  • Real-time location tracking
  • ETA calculation
  • Pricing
  • Payment processing
  • 100M users, 10M drivers

Architecture

Matching Algorithm

Location Tracking

Geospatial Indexing


Q4: Design Netflix.

Answer:

Requirements

  • Stream videos
  • Recommendations
  • Search content
  • Multiple devices
  • 200M subscribers
  • 4K streaming

Architecture

Video Encoding Pipeline

Recommendation System

Adaptive Streaming


Q5: Design YouTube.

Answer:

Requirements

  • Upload videos
  • Stream videos
  • Comments/likes
  • Subscriptions
  • Search
  • 2B users, 1B hours watched daily

Architecture

Upload Pipeline

View Count System


Summary

Medium system design patterns:

  • Twitter: Fanout strategies, timeline generation
  • Instagram: Media processing, feed ranking
  • Uber: Geospatial indexing, real-time matching
  • Netflix: Adaptive streaming, ML recommendations
  • YouTube: Video transcoding, distributed CDN

All designs emphasize scalability, real-time processing, and user experience.

Related Snippets