Projects
Things I built to understand distributed systems and AI engineering at depth.
Raftly
A laboratory for the unhappy path
A Raft consensus implementation in Go that I wrote to actually understand the protocol. Most teaching versions only show you the happy path. This one is built to break on purpose, in ways you can reproduce, so the failures look like the ones real clusters run into. Leader election, log replication, durability, fast backtracking, partition recovery. All of it.
Distributed RAG System
Retrieval-augmented generation from first principles
A RAG system I built layer by layer instead of gluing a vector database onto an API call. Ingestion, hybrid retrieval over dense and sparse signals, a reranking pass, the generation layer, caching, and evaluation. There is an eight part series that walks through why each layer ended up the way it did.
KV Fabric
Consistency is a spectrum
A distributed key-value store in Go. Consistency is tunable, reads run on MVCC, and replication lag gets measured live rather than guessed at. The point was to make the trade-offs visible instead of theoretical. It even reproduces the phantom durability trap, the one where a write looks committed and is not, and documents the whole thing end to end.
Chrono
Time, the way distributed systems actually need it
A Go library for the four clocks distributed systems actually depend on. Lamport, vector, hybrid logical, and the TrueTime style bounded uncertainty kind. Wall clocks drift and lie, and these are the primitives people reach for when that starts to matter. It also ships a proofs package that reproduces the failure cases the original papers keep warning about, so you can watch them happen for yourself.
MicroGPT Java
A GPT, built up one idea at a time
Karpathy’s MicroGPT, rewritten in Java with no ML dependencies at all. It starts from a plain statistical bigram and works upward one idea at a time. Manual gradients first, then autograd, then an MLP, and finally a multi-head attention transformer that makes up names which sound real. Each step adds exactly one new concept. That was the whole point.