What is system design, and where do you start?
Shows whether you frame requirements before selecting components.
Study guide
What Is System Design?Practice library
A good system design interview answer is a sequence of decisions, not a tour of familiar services. Choose a question, read the linked guide, then practice clarifying scope, naming tradeoffs, and explaining what changes when the system grows or fails.
Question category
Questions that test whether you can turn an ambiguous prompt into a clear first design.
Shows whether you frame requirements before selecting components.
Study guide
What Is System Design?Tests your grasp of state, failure domains, and operational cost.
Study guide
Horizontal vs Vertical ScalingOpens a discussion about routing, health checks, and draining.
Study guide
Load Balancing in System DesignQuestion category
Questions that move from a single service to traffic, data, and product constraints.
Rewards measurement-led evolution instead of premature complexity.
Study guide
Scalability in System DesignTests identity, fairness, and distributed counter tradeoffs.
Study guide
Rate Limiting in System DesignReveals whether data invariants and access patterns drive the decision.
Study guide
SQL vs NoSQL in System DesignQuestion category
Questions where partial failure, data ownership, and operational recovery matter.
Tests routing, resharding, and uneven workload reasoning.
Study guide
Database Sharding in System DesignSeparates a slogan from a product-level correctness decision.
Study guide
Strong vs Eventual ConsistencyBrings together partitioning, invalidation, and degraded reads.
Study guide
Design a Distributed CacheQuestion category
Questions that require a complete service boundary and a credible operating model.
Tests delivery state, preference handling, retries, and provider failure.
Study guide
Design a Notification SystemTests idempotency, durable records, and reconciliation.
Study guide
Design a Payment SystemTests time semantics, leases, retries, and observability.
Study guide
Design a Job SchedulerQuestion category
Questions that expose how you manage organizational boundaries, migration, and sustained scale.
Tests a hybrid architecture and evolution path, not just fanout vocabulary.
Study guide
Design a Social Media FeedTests durable control planes, lifecycle policy, and recovery tradeoffs.
Study guide
Design a File Storage SystemTests isolation, priorities, and observability under failure.
Study guide
Fault Tolerance in Distributed SystemsQuestion category
Questions that ask for system-wide invariants, business risk management, and multi-team decision making.
Tests authority boundaries, fairness, and reconciliation across systems.
Study guide
Design a Ticket Booking SystemTests coordination assumptions, timeouts, and operational strategy.
Study guide
Distributed Systems FundamentalsTests the distinction between an uptime number and dependable customer outcomes.
Study guide
Availability vs ReliabilityQuestion category
Coordination and communication questions where no node sees the entire truth at once.
Tests explicit consistency and availability choices.
Study guide
Strong vs Eventual ConsistencyConnects ordering, offline delivery, and connection management.
Study guide
Design a Chat SystemTests acknowledgement, retry, and consumer-lag reasoning.
Study guide
Queue vs StreamQuestion category
Interface and service-boundary questions for practical backend interview loops.
Tests contract design rather than protocol preference.
Study guide
REST vs GraphQLTests identifiers, caching, lifecycle management, and abuse controls.
Study guide
Design a URL ShortenerTests delivery expectations and connection cost.
Study guide
HTTP vs WebSocketsQuestion category
Questions about operational boundaries, elasticity, and recovery in managed environments.
Tests statelessness, coordination, and health-based routing.
Study guide
Horizontal vs Vertical ScalingTests durability claims, lifecycle workflows, and repair.
Study guide
Design a File Storage SystemTests blast-radius thinking instead of generic retry advice.
Study guide
Fault Tolerance in Distributed SystemsQuestion category
Questions about data models, replication, and high-volume ownership boundaries.
Tests whether you separate scale-out from redundancy.
Study guide
Sharding vs ReplicationTests distribution, routing, and resharding plans.
Study guide
Database Sharding in System DesignTests data-first technology selection.
Study guide
SQL vs NoSQL in System DesignQuestion category
Questions about designing for uncertain dependencies and recovering customer trust.
Tests whether a dashboard metric is tied to a meaningful outcome.
Study guide
Availability vs ReliabilityTests reconciliation and uncertain external results.
Study guide
Design a Payment SystemTests lag, retries, poison messages, and overload handling.
Study guide
Queue vs StreamBefore you start
System design interviews are common for backend, infrastructure, platform, distributed-systems, and senior engineering roles. For the broader interview process, go back to ATOFF's Interview Preparation hub.
Keep building momentum