YOUR BRIEF
What to work through
Work through a distributed key-value store as a spoken system design interview. Start by clarifying the scope, sketch a working design and explain the trade-offs behind your choices.
- put(key, value) stores a value under a key
- get(key) returns the value stored under a key
- The caller can tune consistency against latency
- Capacity grows by adding nodes, with no downtime
BEFORE YOU START
Constraints to discuss
- Each key-value pair is small, under 10 KB
- Stays available during a network partition, at the cost of consistency
- Strong reads when W + R > N; faster, eventual reads below that
- Low latency on every put and get
- Survives the loss of a whole data center
Need a starting point?
Watch for these common gaps as you prepare:
- Choosing consistency or availability without asking which the use case needs
- Placing replicas on virtual nodes of the same physical server
- Handling only short outages, with no anti-entropy repair for nodes gone for good
- Leaving an open-ended prompt open: no stated scale, latency or consistency targets
Why this question is in the collection
These sources connect the problem to company interview reports or preparation guides. They do not guarantee what a company will ask you.