Design a Raft Consensus Layer for Multi-Region Active-Active Replication
Overview
What this challenge is about.
Design a Raft Consensus Layer for Multi-Region Active-Active Replication. Expert-level challenge in design. Designing real products under real constraints, e...
The Brief
What you'll do, and what you'll demonstrate.
Design and validate a Raft-based consensus layer that keeps a five-node, three-region cluster linearizable while surviving continuous network-partition, clock-skew, and packet-reordering faults.
This is not a design exercise. It is the work a product designer does between a brief and a shipped interface. That distinction matters to every hiring manager who has seen candidates redesign Spotify's homepage and none who have worked under real product constraints.
When you finish, you will have something most graduates do not: a real-world deliverable, verified by Ewance, that you can show to a hiring manager and say "I did this. Here is the proof."
Earning criteria — what you'll demonstrate
- Translate the Raft paper's safety properties into a correct, race-free Go implementation
- Reason rigorously about linearizability under partition and clock-skew faults
- Design deterministic, reproducible fault injection for distributed systems
- Make and defend explicit consistency-versus-availability trade-offs for a multi-region deployment
- Communicate a complex distributed-systems design as a clear written proposal
Program Fit
Where this fits in your program.
Sharpens the same skills your degree expects you to demonstrate.
Aligned coursework coming soon.
Skills
Skills you'll demonstrate.
Each one shows up on your verified credential.
- Distributed Consensus
Apply distributed consensus to solve real industry problems and demonstrate production-level capability.
- Raft
Apply raft to solve real industry problems and demonstrate production-level capability.
- Fault Tolerance
Apply fault tolerance to solve real industry problems and demonstrate production-level capability.
- Go Programming
Apply go programming to solve real industry problems and demonstrate production-level capability.
- Fault Injection
Apply fault injection to solve real industry problems and demonstrate production-level capability.
- Distributed Systems
Apply distributed systems to solve real industry problems and demonstrate production-level capability.
Careers
Career paths this challenge builds toward
Completing this challenge demonstrates skills that transfer directly to these roles:
Distributed Systems Engineer
Building and validating a consensus layer under adversarial faults mirrors the core work of distributed systems engineers at database and infrastructure companies, who own replication correctness and must defend safety properties under real-world network conditions.
This challenge sharpens
- distributed-consensus
- fault-tolerance
- distributed-systems
Database Infrastructure Engineer
Replacing single-leader replication with multi-region consensus is exactly the kind of project database infrastructure engineers lead, requiring deep Raft knowledge and the ability to ship production-grade Go that survives partitions and clock skew.
This challenge sharpens
- raft
- go-programming
- fault-tolerance
Reliability / Test Infrastructure Engineer
Designing deterministic, replayable fault injection and linearizability checking bridges directly to reliability and test-infrastructure roles, where engineers build the harnesses that prove a system is correct before it reaches customers.
This challenge sharpens
- fault-injection
- distributed-consensus
- go-programming