InterviewStack.io LogoInterviewStack.io

Distributed Systems Fundamentals Questions

Core theory that underpins any multi-node system: the CAP and PACELC theorems, consistency models (strong, causal, eventual), partitioning, replication, and the fundamental tradeoffs between latency, availability, and consistency. Covers how network partitions, clock skew, and partial failure change the reasoning compared to single-node systems. This is the vocabulary layer every distributed design question builds on.

EasyTechnical
58 practiced

Walk me through the CAP theorem: what do consistency, availability, and partition tolerance each guarantee, and why can a distributed system only provide two of the three once a network partition actually occurs? Give one example of a system design that would lean toward consistency (CP) and one that would lean toward availability (AP), and state precisely what each choice gives up. Also clarify how this notion of 'consistency' differs from the one used in ACID transactions.

MediumTechnical
68 practiced

Explain what a CRDT (Conflict-free Replicated Data Type) is and why state-based and operation-based CRDTs let replicas converge to the same value without any coordination between them. Walk through two concrete examples: a grow-only counter (G-Counter) and an observed-remove set, and describe what property of the underlying merge operation makes convergence guaranteed.

EasyTechnical
78 practiced

Explain the client-centric session guarantees: read-your-writes, monotonic reads, and monotonic writes. For each, describe a concrete client-visible symptom when the guarantee is missing, and one lightweight server-side or client-side mechanism that provides it.

MediumTechnical
64 practiced

Explain the saga pattern for coordinating a transaction across multiple services without a distributed commit protocol: choreography versus orchestration, and how compensating actions undo partial work. Walk through a concrete order-fulfillment sequence (reserve inventory, charge payment, schedule shipment) and what happens when the shipment step fails.

HardSystem Design
57 practiced

Design an approach that gives a user read-your-writes (session consistency) for their own profile updates in a system that replicates writes asynchronously across regions. Cover how you'd track what the client has already seen (session tokens, sticky routing, or version vectors), and how you'd handle token expiry, a failed request whose outcome is unknown, and a client that migrates to a new region mid-session.

Unlock Full Question Bank

Get access to all 9 Distributed Systems Fundamentals interview questions and detailed answers.

Sign in to Continue

Join thousands of developers preparing for their dream job.