Challenge - 5 Problems
System Design Mastery
Get all challenges correct to earn this badge!
Test your skills under time pressure!
🧠 Conceptual
intermediate2:00remaining
What is the primary goal of the initial requirements gathering phase in a system design interview?
During the first step of a system design interview, what is the main purpose of gathering requirements?
Attempts:
2 left
💡 Hint
Think about what helps you know what to build before designing.
✗ Incorrect
The initial phase focuses on understanding what the system should do and its constraints, which guides the design decisions.
❓ Architecture
intermediate2:00remaining
Which component is essential to handle high traffic in a scalable web system design?
In designing a web system that must handle millions of users, which component helps distribute user requests efficiently?
Attempts:
2 left
💡 Hint
Think about how to spread work evenly across servers.
✗ Incorrect
A load balancer distributes incoming traffic across multiple servers to prevent overload and improve availability.
❓ scaling
advanced2:30remaining
What is the main tradeoff when choosing between vertical and horizontal scaling?
When scaling a system, what is the key difference and tradeoff between adding more power to one server versus adding more servers?
Attempts:
2 left
💡 Hint
Consider limits of hardware and benefits of multiple machines.
✗ Incorrect
Vertical scaling boosts one machine's resources but hits hardware limits; horizontal scaling adds machines, improving capacity and fault tolerance.
❓ tradeoff
advanced2:30remaining
Which consistency model sacrifices immediate data accuracy for better availability in distributed systems?
In distributed system design, which consistency approach allows data to be temporarily out of sync to keep the system available?
Attempts:
2 left
💡 Hint
Think about systems that accept delays in data syncing to avoid downtime.
✗ Incorrect
Eventual consistency allows temporary differences in data across nodes to maintain availability and partition tolerance.
❓ estimation
expert3:00remaining
Estimate the number of requests per second a system must handle if it serves 10 million users daily with an average of 5 requests per user.
Given 10 million users each making 5 requests per day, what is the approximate average number of requests per second the system should support?
Attempts:
2 left
💡 Hint
Calculate total requests per day, then divide by seconds in a day (86400).
✗ Incorrect
Total requests = 10,000,000 * 5 = 50,000,000 per day. Dividing by 86400 seconds gives about 578 requests per second.