Katkat

Design a replicated key-value store with quorums

MicrosoftSoftware Engineer · Online Assessment

Last updated

This question evaluates understanding of replication, quorum protocols, data partitioning, consistency models, failure detection and recovery, and conflict resolution in distributed key–value stores.

Design a distributed system that replicates key–value pairs across multiple replicas.

The interviewer wants to focus on replication, quorums, and failure handling.

Specify:

  • APIs (e.g., Get(key), Put(key, value)), consistency goals, and assumptions.
  • How data is partitioned and replicated.
  • Quorum read/write rules (e.g., N/R/W) and how they affect consistency/availability.
  • How you detect and recover from bad nodes, network partitions, and replica lag.
  • Handling conflicts (if writes can be concurrent).

Keep it high-level but concrete enough to reason about correctness and trade-offs.