The same system design questions asked at Google, Meta, Amazon, and top tech companies — organized by difficulty. Practice each one on an interactive whiteboard and compare your solution to an expert answer key.
Start practicing freeStart here to build core system design skills. These questions cover fundamental concepts like hashing, caching, storage, and CDN architecture.
Design a service like bit.ly that takes long URLs and generates short, unique aliases. Cover hashing strategies, database schema, caching layers, and handling collisions at scale.
Build a distributed rate limiting system that protects APIs from abuse. Discuss token bucket vs sliding window algorithms, Redis-backed counters, and edge cases at scale.
Design a text-sharing service that stores and serves pastes efficiently. Cover object storage, CDN distribution, expiration policies, and access control.
The most commonly asked system design interview questions at FAANG companies. These cover distributed systems, real-time communication, concurrency, and event-driven architectures.
Design the home timeline for a social network with hundreds of millions of users. Tackle fan-out-on-write vs fan-out-on-read, caching strategies, and ranking algorithms.
Design a cloud file storage and sync service. Cover file chunking, deduplication, conflict resolution, and efficient sync across multiple devices.
Design a real-time messaging platform supporting billions of messages daily. Discuss WebSocket connections, end-to-end encryption, message delivery guarantees, and online presence.
Design a scalable notification service handling push, SMS, and email across millions of users. Cover message queues, delivery priorities, user preferences, and rate limiting.
Design an event ticketing platform that handles massive concurrent purchases without overselling. Discuss distributed locking, ACID transactions, seat reservation, and queue management.
Design a leaderboard that ranks millions of players in real-time. Cover Redis sorted sets, score updates, pagination, and handling ties across distributed systems.
Design a location-based matching platform. Discuss geospatial indexing, recommendation algorithms, bloom filters for deduplication, and swipe queue management.
The hardest system design questions asked in senior and staff-level interviews. These require deep knowledge of distributed systems, real-time processing, and specialized infrastructure.
Design a video sharing platform at YouTube scale. Cover video upload and transcoding pipelines, adaptive bitrate streaming, CDN distribution, and recommendation systems.
Design a ride-sharing platform with real-time driver matching. Discuss geospatial indexing, supply-demand matching algorithms, ETA calculation, and surge pricing.
Design a stock exchange matching engine. Cover order book data structures, matching algorithms, event sourcing for audit trails, and sub-millisecond latency requirements.
Design a real-time collaborative document editor. Discuss CRDTs vs Operational Transform for conflict resolution, WebSocket architecture, cursor presence, and versioning.
Design a web crawler that indexes billions of pages. Cover URL frontier management, BFS traversal, content deduplication, politeness policies, and distributed crawling.
Design a flash sale system handling millions of concurrent requests. Discuss inventory management with Redis, request queuing, rate limiting, and preventing overselling.
Design a live streaming platform at Twitch scale. Cover ingest servers, transcoding pipelines, CDN distribution, chat systems, and adaptive bitrate streaming with HLS.
Reading about system design questions isn't enough. theonsite.dev lets you actively practice each one with the same tools you'll use in a real interview.
Use the Excalidraw-powered whiteboard to draw components, databases, queues, and connections — just like a real interview.
Each question has a realistic time limit. Practice communicating your design clearly within the time constraints.
After your attempt, reveal an expert answer key to see what you missed and learn better approaches.
Start with a free beginner challenge. No credit card required — just pick a question, open the whiteboard, and start designing.
Start practicing free