System Design Interview Questions - Hard

Hard-level system design interview questions covering globally distributed, highly scalable systems.

Q1: Design WhatsApp/Telegram (Global Messaging).

Answer:

Requirements

  • 2B users globally
  • Real-time messaging
  • End-to-end encryption
  • Group chats (256 members)
  • Media sharing
  • 99.99% uptime
  • <100ms latency

Global Architecture

Message Delivery Flow

Sharding Strategy

Group Chat Architecture

End-to-End Encryption


Answer:

Requirements

  • Index 100B+ web pages
  • <200ms query latency
  • Relevance ranking
  • Distributed crawling
  • Real-time indexing
  • Handle 100K queries/sec

Architecture

Crawling Pipeline

Inverted Index Structure

Query Processing

PageRank Algorithm


Q3: Design Amazon (E-commerce at Scale).

Answer:

Requirements

  • 300M products
  • 200M active users
  • Black Friday: 1M orders/hour
  • Inventory management
  • Order processing
  • Payment processing
  • Global distribution

Microservices Architecture

Order Processing Saga

Inventory Management

Flash Sale Architecture


Q4: Design Ticketmaster (High Concurrency Booking).

Answer:

Requirements

  • Concert tickets
  • High concurrency (100K users for 10K seats)
  • No double booking
  • Fair allocation
  • Handle bots
  • Payment processing

Architecture

Seat Locking Mechanism

Virtual Queue System

Bot Prevention


Q5: Design Dropbox/Google Drive (Distributed File Sync).

Answer:

Requirements

  • File upload/download
  • Real-time sync across devices
  • Version history
  • Sharing/permissions
  • 500M users
  • 1PB+ storage

Architecture

File Chunking & Deduplication

Sync Protocol

Conflict Resolution


Summary

Hard system design challenges:

  • WhatsApp: Global messaging, E2E encryption, real-time delivery
  • Google Search: Distributed crawling, inverted index, PageRank
  • Amazon: Microservices, saga pattern, inventory management
  • Ticketmaster: High concurrency, distributed locking, virtual queues
  • Dropbox: File sync, chunking, deduplication, conflict resolution

All require deep understanding of distributed systems, consistency, and scale.

Related Snippets