~/problems
Problems
Basics first, then the classics, then company-style assessments. Every problem has tests you run right here; multi-level ones unlock as you go. See the roadmap.
Practical systems
Streams & durability
Rate counters, serialization, retrying work queues.
16 problems
Practical systems
Streams & durability Rate counters, serialization, retrying work queues.
Rolling windows and rate counters
- Basics: count hits in the last N seconds basics py · c++ · java easy
- Café drink counts over the last N seconds py · c++ · java easy
- Key-value store with rolling QPS 3 levels Databricks medium
- OA: Chat message events aggregation 3 levels OpenAI py · c++ · java easy
- OA: Throttle requests per client 4 levels py · c++ · java hard
- Page views in the last five minutes py · c++ · java easy
- Logger Rate Limiter py · c++ · java easy
Serialization and durability
- Basics: length-prefixed encoding of a list of strings basics easy
- Escaped key=value settings file easy
- OA: Memoizing LRU cache that survives crashes 3 levels Anthropic medium
- OA: Durable key-value store serialization 4 levels OpenAI medium
- Encode and decode with RLE and bit-packing Databricks medium
Fault-tolerant work queue
- Basics: expire leases with a min-heap basics py · c++ · java easy
- Round-robin print queue across customers py · c++ · java easy
- OA: Fault-tolerant work queue 3 levels OpenAI medium
- Round-robin task scheduler 3 levels Citadel medium