← Back to Home

System Design Fundamentals Interview Questions — What Senior Engineers Need to Know

System design interviews test whether you can reason about trade-offs at scale. Interviewers aren’t looking for a single correct answer — they want to see how you think through constraints, identify bottlenecks, and justify architectural decisions with concrete reasoning.

These 20 questions cover the fundamental building blocks that appear in nearly every system design discussion: consistency models, caching layers, partitioning strategies, load balancing, and failure handling. Master these concepts and you’ll have the vocabulary to tackle any open-ended design problem.

All 20 Questions

Redis Caching PatternsSenior
What are the common Redis caching patterns?

Redis caching patterns define how your application coordinates reads and writes between the cache and the source-of-truth database. Choosing the wrong pattern causes stale data, cache stampedes, or write amplification.

Read full answer →
Vertical vs Horizontal ScalingEntry
What is the difference between vertical and horizontal scaling?

Scaling is how you increase a system's capacity to handle more load. The two fundamental approaches differ in *where* you add resources.

Read full answer →
API VersioningMid
What are the common approaches to API versioning?

API versioning lets you evolve a public API without breaking existing clients. The four main approaches each make different trade-offs between discoverability, client coupling, and REST purity.

Read full answer →
SLOs vs SLAsSenior
What is the difference between SLOs and SLAs?

SLOs, SLAs, and SLIs form a hierarchy for defining, measuring, and committing to reliability. Understanding how they relate is central to site reliability engineering.

Read full answer →
Availability — Five 9sSenior
What does 'five 9s' availability mean and how do you achieve it?

Five 9s refers to 99.999% availability, which translates to approximately 5 minutes and 15 seconds of total downtime per year. To put this in perspective, 99.9% (three 9s) allows roughly 8.7 hours per year, and 99.99% (four 9s) allows about 52 minutes. Each additional 9 represents a tenfold reduc…

Read full answer →
Latency vs ThroughputEntry
What is the difference between latency and throughput?

Latency and throughput are the two primary axes of performance, and they measure fundamentally different things.

Read full answer →
Cache Eviction — LRU, LFU, FIFOMid
What are LRU, LFU, and FIFO cache eviction strategies?

Cache eviction policies determine which item is removed when the cache is full and a new item must be inserted. The right policy depends on the access pattern of the workload.

Read full answer →
Stateless vs Stateful Web TierMid
What is the difference between a stateless and stateful web tier?

**Stateful web tier**: each web server stores session data locally — in memory or on local disk. A user who authenticates on server A must always be routed back to server A because only that server holds their session. This is enforced via sticky sessions (load balancer affinity). Problems: if se…

Read full answer →
Multi-data CenterSenior
What are the challenges of a multi-data center architecture?

Running across multiple data centers (or regions) eliminates single points of geographic failure and reduces latency by serving users from the nearest location. However, it introduces a set of non-trivial challenges:

Read full answer →
Back-of-envelope: QPSMid
How do you estimate QPS in a back-of-envelope calculation?

Back-of-envelope QPS estimation follows a top-down decomposition:

Read full answer →
Back-of-envelope: StorageMid
How do you estimate storage needs in a back-of-envelope calculation?

Storage estimation follows a data-type decomposition:

Read full answer →
Back-of-envelope: BandwidthMid
How do you estimate bandwidth in a back-of-envelope calculation?

Bandwidth estimation connects QPS to data transferred per second. It is always directional — inbound (upload) and outbound (download) are sized separately because they drive different infrastructure limits.

Read full answer →
Power of 2 TableEntry
What are the key powers of 2 every engineer should know?

Powers of 2 are the vocabulary of capacity estimation. Every storage, memory, and bandwidth number is ultimately expressed in multiples of 2^n bytes. Internalizing this table prevents unit errors under interview pressure.

Read full answer →
Latency NumbersMid
What are the key latency numbers every engineer should know?

Jeff Dean's latency numbers (periodically updated as hardware improves) are the calibration tool for system design. The orders of magnitude matter more than the exact figures.

Read full answer →
Framework Wrap-upSenior
How do you wrap up a system design answer effectively?

The wrap-up is not a summary — it is a structured hand-off that signals engineering maturity. A strong close covers four areas:

Read full answer →
Cache InvalidationSenior
What are the common cache invalidation strategies?

Cache invalidation is one of the hardest problems in distributed systems because you must balance consistency, availability, and performance simultaneously. The four primary strategies each fit different access patterns.

Read full answer →
CRUD → HTTPEntry
How do CRUD operations map to HTTP methods?

CRUD (Create, Read, Update, Delete) maps onto HTTP methods through REST conventions. The mapping is not one-to-one—HTTP provides more verbs than CRUD has operations—and understanding the nuances prevents common API design mistakes.

Read full answer →
API Design Best PracticesSenior
What are the best practices for API design?

Good API design is a contract between producers and consumers. A poorly designed API is expensive to change once clients depend on it. The following practices, applied consistently, produce APIs that are predictable, evolvable, and safe to build on.

Read full answer →
Write-around CacheSenior
What is a write-around cache strategy?

Write-around caching is a strategy in which write operations bypass the cache entirely and go directly to the persistent storage (database, object store). The cache is only populated on cache miss during a subsequent read. This contrasts with write-through (cache and storage updated synchronously…

Read full answer →
Reliability, Fault Tolerance, RedundancySenior
What is the relationship between reliability, fault tolerance, and redundancy?

Reliability, fault tolerance, and redundancy are related but distinct concepts that together form the foundation of resilient system design. Conflating them leads to over-engineering in some areas and blind spots in others.

Read full answer →

How to Prepare

The best system design candidates practice the framework, not the topics. Spend 30 minutes drilling the requirements-clarification phase on random problem prompts — weak candidates rush past scoping and get penalized for it. Then work through 3–5 canonical problems (URL shortener, Twitter feed, notification service) end-to-end with a timer.

Focus on justifying every architectural choice against alternatives. “Why this over that” is where senior interviewers probe hardest. Practicing 20 problems shallowly gets you a mixed signal; practicing 5 problems until you can defend every decision gets you strong-inclined.

Related Topics

  • Distributed Systems Interview Questions
  • Database Interview Questions
  • System Design Interview Guide
  • Infrastructure Interview Questions

Test Your Knowledge

Take a free AI-graded assessment across multiple domains. No signup required.

Start Free Assessment
GrindQuestionsAITechnical interview assessment
TermsPrivacyAbout