200 System Design Questions: Beginner to Google Senior
Engineer Level
Phase 1: Fundamentals (Questions 1-30)
Learn basic concepts, simple systems, and core building blocks
1. Design a URL shortener (like [Link]) for 1000 users with basic requirements
2. Design a simple key-value storage system that runs on a single machine
3. Design a basic parking lot system with entry/exit tracking
4. Design a simple library management system for book checkouts
5. Design a basic online shopping cart that stores items in memory
6. Design a simple blogging platform where users can create and read posts
7. Design a basic contact management system (address book)
8. Design a simple task/todo list application for personal use
9. Design a basic elevator control system for a single building
10. Design a simple voting/polling system for a classroom (100 users)
11. Design a basic rate limiter for an API (allow N requests per minute per user)
12. Design a simple notification system that sends email alerts
13. Design a basic file storage system for a small team (like Dropbox for 50 users)
14. Design a simple chat application for two users (one-on-one messaging)
15. Design a basic online reservation system for a restaurant
16. Design a simple leaderboard system for a gaming application
17. Design a basic calendar/scheduling system for personal use
18. Design a simple event registration system for local meetups
19. Design a basic commenting system for a blog
20. Design a simple image upload and display service
21. Design a basic search functionality for a small e-commerce site (1000 products)
22. Design a simple music playlist management system
23. Design a basic analytics dashboard showing daily user counts
24. Design a simple recommendation system showing "you might also like" based on categories
25. Design a basic inventory management system for a small store
26. Design a simple auction system with bidding functionality
27. Design a basic user authentication system with username/password
28. Design a simple news feed showing posts in chronological order
29. Design a basic ticket booking system for a small movie theater
30. Design a simple collaborative document viewer (read-only shared documents)
Phase 2: Intermediate Systems (Questions 31-70)
Scale to thousands/millions of users, introduce caching, databases, and distribution
31. Design a URL shortener for 10 million users with custom short URLs and analytics
32. Design a distributed key-value store with replication across 3 nodes
33. Design a parking lot system for a multi-level garage across 10 locations in a city
34. Design Instagram's core functionality (photo upload, feed, likes) for 1 million users
35. Design a pastebin service (like [Link]) with expiration and private pastes
36. Design a distributed cache system (like Memcached/Redis) with eviction policies
37. Design a basic content delivery network (CDN) for serving static files globally
38. Design a ride-sharing service like Uber (matching drivers and riders) for a single city
39. Design Twitter's core functionality (tweets, timeline, following) for 10 million users
40. Design a web crawler that can index 1 million web pages per day
41. Design a type-ahead/autocomplete system for search queries
42. Design a distributed job scheduler that runs cron jobs across multiple machines
43. Design a messaging system like WhatsApp for 100 million users with delivery receipts
44. Design Dropbox's file synchronization for 10 million users with conflict resolution
45. Design a collaborative text editor like Google Docs (real-time editing for 10 users per document)
46. Design a hotel booking system like [Link] handling overbooking scenarios
47. Design a social network news feed with ranking algorithm (not just chronological)
48. Design a scalable notification system supporting email, SMS, and push notifications
49. Design YouTube's video upload and streaming service for 100 million users
50. Design a distributed logging system that collects logs from 1000 servers
51. Design a proximity service finding nearby restaurants/places (like Yelp) for a country
52. Design an online judge system (like LeetCode) that executes user code safely
53. Design a scalable email service with folders, search, and attachments
54. Design a real-time collaborative whiteboard application for teams
55. Design a food delivery service like DoorDash with order tracking
56. Design a stock exchange system handling thousands of trades per second
57. Design a distributed rate limiter working across multiple API servers
58. Design a metrics monitoring system collecting and displaying time-series data
59. Design a video conferencing system like Zoom for 100 participants per room
60. Design an e-commerce search and filtering system for 10 million products
61. Design a recommendation engine for an e-commerce platform using collaborative filtering
62. Design a distributed lock service (like Zookeeper) for coordination
63. Design a payment processing system handling transactions with idempotency
64. Design a gaming leaderboard showing top 100 players globally with real-time updates
65. Design a system for booking airline tickets with seat selection
66. Design a distributed configuration management system
67. Design a trending topics system (like Twitter trends) detecting popular hashtags
68. Design a code deployment system deploying to 1000s of servers
69. Design a live commenting system for sports events with millions of concurrent users
70. Design a marketplace like Etsy with sellers, products, and transactions
Phase 3: Advanced Scalability (Questions 71-110)
Handle billions of users/requests, advanced caching, sharding, and consistency
71. Design Facebook's News Feed for 2 billion users with complex ranking algorithms
72. Design Google Search's indexing and ranking system for 50 billion web pages
73. Design WhatsApp with end-to-end encryption for 2 billion users
74. Design Netflix's video streaming and recommendation for 200 million subscribers
75. Design Amazon's product catalog and search for 500 million products
76. Design Twitter with timeline fanout for 500 million users and 500M tweets/day
77. Design Spotify's music streaming for 400 million users with offline playback
78. Design LinkedIn's connection graph and "People You May Know" feature
79. Design TikTok's video recommendation algorithm and infinite scroll feed
80. Design Google Maps' navigation system with real-time traffic data
81. Design Instagram Stories with 24-hour expiration for 1 billion users
82. Design Airbnb's search and booking system with dynamic pricing
83. Design a distributed database like Google Spanner with global consistency
84. Design Reddit with upvoting, downvoting, and hot/trending algorithms
85. Design Uber's dispatch system matching millions of riders and drivers globally
86. Design a global payment system like Stripe processing millions of transactions
87. Design Gmail's email search for billions of emails with complex queries
88. Design YouTube's video recommendation system using ML models
89. Design Amazon's inventory and order fulfillment system for same-day delivery
90. Design Facebook Messenger supporting billions of messages daily
91. Design Twitch's live video streaming for millions of concurrent viewers
92. Design Pinterest's image discovery and recommendation system
93. Design Slack's real-time messaging for large enterprises (100K+ users per workspace)
94. Design Wikipedia's content storage and versioning system
95. Design DoorDash's real-time delivery tracking and ETA prediction
96. Design Shopify's e-commerce platform supporting millions of stores
97. Design Venmo's social payment system with transaction feeds
98. Design Discord's voice/video chat for millions of servers
99. Design Medium's content publishing and recommendation platform
100. Design Salesforce's CRM system with complex data relationships
101. Design GitHub's distributed version control and merge conflict resolution
102. Design Zoom's real-time video encoding and adaptive bitrate streaming
103. Design Robinhood's stock trading platform with real-time price updates
104. Design Snapchat's ephemeral messaging with screenshot detection
105. Design Quora's question-answer platform with personalized feed
106. Design Yelp's review system with fraud detection
107. Design Zillow's real estate search with map-based filtering
108. Design Instacart's grocery delivery with inventory synchronization
109. Design PayPal's dispute resolution and refund system
110. Design Coinbase's cryptocurrency exchange with order matching
Phase 4: Specialized Systems (Questions 111-150)
Focus on specific domains: ML, real-time, security, analytics
Machine Learning Infrastructure
111. Design a distributed training system for large neural networks across 1000 GPUs
112. Design an A/B testing platform measuring experiment results for 100M users
113. Design a feature store for ML models serving features with low latency
114. Design a model serving infrastructure deploying 1000s of ML models
115. Design an ML pipeline orchestration system (training, validation, deployment)
116. Design a real-time fraud detection system for financial transactions
117. Design a clickstream analytics system processing billions of events
118. Design a personalization engine delivering customized content in <100ms
119. Design a computer vision system for autonomous vehicles processing camera feeds
120. Design a natural language processing pipeline for sentiment analysis at scale
Real-Time and Streaming Systems
121. Design a real-time bidding (RTB) system for online advertising with <100ms latency
122. Design a stream processing system like Apache Kafka handling 10M messages/second
123. Design a real-time analytics dashboard showing metrics with 1-second freshness
124. Design a change data capture (CDC) system synchronizing databases in real-time
125. Design a real-time multiplayer gaming backend for 1 million concurrent players
126. Design a financial market data feed processing millions of stock quotes/second
127. Design a real-time collaborative coding platform like Replit
128. Design an IoT data ingestion system for billions of sensor devices
129. Design a real-time anomaly detection system for infrastructure monitoring
130. Design a live sports scoring system updating millions of clients instantly
Security and Privacy
131. Design an OAuth 2.0 authorization server supporting millions of applications
132. Design a secrets management system like HashiCorp Vault
133. Design a DDoS protection system filtering malicious traffic at network edge
134. Design a data privacy compliance system (GDPR) with right-to-be-forgotten
135. Design a certificate authority and PKI infrastructure
136. Design an intrusion detection system analyzing network traffic patterns
137. Design a secure multi-tenant database with row-level security
138. Design a password-less authentication system using WebAuthn/FIDO2
139. Design a data encryption system with key rotation and access controls
140. Design a blockchain-based system ensuring data immutability and transparency
Analytics and Data Processing
141. Design a data warehouse like Google BigQuery handling petabyte-scale analytics
142. Design an ETL pipeline processing terabytes of data daily
143. Design a customer data platform (CDP) unifying user data from 100 sources
144. Design a real-time dashboard for business intelligence with complex aggregations
145. Design a log aggregation and analysis system like Splunk
146. Design a data lake architecture storing structured and unstructured data
147. Design a recommendation system using deep learning on user behavior graphs
148. Design a time-series database for metrics storage (100M data points/second)
149. Design a distributed query engine like Presto for interactive analytics
150. Design a customer segmentation system processing billions of user events
Phase 5: Expert-Level Challenges (Questions 151-200)
Complex trade-offs, cutting-edge problems, architecture at Google scale
Global-Scale Infrastructure
151. Design Google's global load balancing system routing traffic across continents
152. Design a multi-region active-active database with conflict-free replication (CRDT)
153. Design a global rate limiting system with distributed consensus
154. Design a content delivery network serving 50% of internet traffic
155. Design a DNS system handling billions of queries per day with <10ms latency
156. Design a distributed tracing system like Google Dapper for microservices
157. Design a chaos engineering platform testing system resilience at scale
158. Design a network traffic engineering system optimizing bandwidth usage
159. Design a global time synchronization service (like Google TrueTime)
160. Design a planetary-scale distributed storage system
Advanced Data Systems
161. Design a distributed graph database for social networks with 5 billion users
162. Design a multi-model database supporting documents, graphs, and key-value
163. Design a versioned data store supporting point-in-time queries for compliance
164. Design a real-time OLAP system with sub-second query latency on petabytes
165. Design a data replication system across heterogeneous databases
166. Design a distributed transaction coordinator using two-phase commit at scale
167. Design a temporal database tracking historical changes to all records
168. Design a federated query engine querying across 1000 data sources
169. Design an event sourcing system with CQRS for financial applications
170. Design a vector database for semantic search on billions of embeddings
Complex Application Domains
171. Design a high-frequency trading system executing millions of trades per second
172. Design a global supply chain management system with real-time tracking
173. Design a healthcare records system with HIPAA compliance and interoperability
174. Design a smart city traffic management system controlling signals in real-time
175. Design a space satellite communication network with intermittent connectivity
176. Design an autonomous drone fleet coordination system
177. Design a quantum computing job scheduler and result processing system
178. Design a genomic data processing pipeline for precision medicine
179. Design a climate modeling system processing exabytes of sensor data
180. Design a brain-computer interface system processing neural signals in real-time
Cutting-Edge Architectures
181. Design a serverless computing platform like AWS Lambda at Google scale
182. Design a service mesh infrastructure managing 100K microservices
183. Design a multi-cloud orchestration system spanning AWS, GCP, and Azure
184. Design an edge computing platform processing data on 1M edge devices
185. Design a zero-trust security architecture for enterprise applications
186. Design a container orchestration system beyond Kubernetes capabilities
187. Design a distributed machine learning inference system with model parallelism
188. Design a privacy-preserving analytics system using differential privacy
189. Design a decentralized identity system using blockchain and zero-knowledge proofs
190. Design a neural architecture search system automatically discovering ML models
Ultimate Integration Challenges
191. Design Google's entire infrastructure: search, ads, YouTube, Gmail, Maps integrated
192. Design a fully automated cloud platform with self-healing and auto-scaling
193. Design a disaster recovery system with zero data loss across global failures
194. Design an anti-money laundering system analyzing global financial transactions
195. Design a misinformation detection system for social media at scale
196. Design a carbon-neutral cloud infrastructure with optimal resource allocation
197. Design a accessibility system making all digital content universally accessible
198. Design a pandemic early warning system processing global health data
199. Design a universal translation system supporting 1000 languages in real-time
200. Design a digital twin platform simulating an entire city's infrastructure in real-time
How to Approach These Questions
For Each Question, Cover:
1. Requirements Clarification (5 min)
Functional requirements
Non-functional requirements (scale, latency, availability)
Constraints and assumptions
2. Capacity Estimation (5 min)
Traffic estimates (QPS, users)
Storage estimates (GB/TB/PB)
Bandwidth requirements
3. System Interface/API Design (5 min)
Key APIs and their signatures
Data models
4. High-Level Design (10 min)
Major components and their interactions
Draw architectural diagram
5. Detailed Design (15 min)
Database schema and choice
Caching strategy
Load balancing
Sharding/partitioning
Replication
6. Bottlenecks and Trade-offs (10 min)
Identify system bottlenecks
Discuss trade-offs (CAP theorem, consistency vs availability)
Failure scenarios and mitigation
7. Extended Requirements (5 min)
Monitoring and alerting
Security considerations
Future scalability
Recommended Learning Path:
Weeks 1-4: Questions 1-30 (Fundamentals)
Weeks 5-10: Questions 31-70 (Intermediate)
Weeks 11-18: Questions 71-110 (Advanced)
Weeks 19-26: Questions 111-150 (Specialized)
Weeks 27-36: Questions 151-200 (Expert)
Key Concepts to Master:
Scalability: Vertical vs horizontal scaling, sharding, partitioning
Databases: SQL vs NoSQL, indexing, normalization, ACID vs BASE
Caching: Cache strategies, CDNs, cache invalidation
Load Balancing: Algorithms, health checks, DNS
Consistency: CAP theorem, eventual consistency, strong consistency
Messaging: Queue systems, pub-sub, message brokers
Networking: HTTP/HTTPS, WebSockets, TCP/UDP, DNS
Storage: Object storage, block storage, file systems
Monitoring: Metrics, logging, tracing, alerting
Security: Authentication, authorization, encryption, DDoS protection
Good luck on your journey to becoming a senior system design engineer!