Implement Raft Consensus for a Self-Hosted Feature-Flag Service
Overview
What this challenge is about.
Implement the core Raft algorithm (leader election, log replication, snapshotting) from the original Ongaro & Ousterhout paper. Use an embedded key-value store (BoltDB or sled) for persistence. Expose a gRPC API matching the provided proto definitions. Run a chaos test suite: kill leader, partition follower, inject 200ms network jitter, restart node from snapshot. Measure leader-election latency p99, write throughput, and recovery time. Deliver source code, an architecture decision record (ADR) explaining choices vs an off-the-shelf library, and a 5-page chaos-test report.
The Brief
What you'll do, and what you'll demonstrate.
Build a Raft-replicated configuration service for self-hosted deployment that survives leader failures within 5 seconds and serves the existing SDK contract.
Earning criteria — what you'll demonstrate
- Implement the core Raft algorithm from a primary research paper
- Reason about log compaction and snapshotting under real disk constraints
- Validate consensus correctness with chaos tests, not just unit tests
- Document an architecture trade-off in a form senior engineers will trust
Program Fit
Where this fits in your program.
Sharpens the same skills your degree expects you to demonstrate.
Skills
Skills you'll demonstrate.
Each one shows up on your verified credential.
Careers
Roles this prepares you for.
Real titles. Real skill bridges. Pick the one closest to your trajectory.
Career mappings coming soon.