← Home

concurrency

3 posts

System Design Case Studies3-part series

Hardsystem design interviewalgorithmscachingconcurrency

Design a Distributed Rate Limiter

Picking token bucket vs sliding window is the easy part. The real interview is what happens when the limiter runs on fifty machines: where the counter lives, why 'local counters' quietly lets 50× your limit through, and how to enforce one global cap without a round-trip on every request.

Asked at Stripe, Cloudflare, GitHub +2
·17 min read
Hardsystem design interviewdatabasesalgorithmsconcurrency

Design a Key-Value Store

The capstone that ties the whole series together: consistent hashing to place data, quorums to tune consistency, vector clocks to detect conflicts, and hinted handoff to stay writable through failure. This is Amazon's Dynamo, rebuilt from its four moving parts.

Asked at Amazon, Netflix, Uber +2
·23 min read