J. Michael Duhart · available, fully remote
Go, Kafka, Cassandra, Redis, Kubernetes. Twenty-eight projects, ranked by what a systems-design loop actually tests — with the measured numbers, the repository paths, and the production bugs I found, fixed, and wrote down.
Four pages each. Pick the column that matches your stack — it will take about ten minutes and you will know whether to call.
Scale reasoning, correctness under concurrency, written design.
Audio, ingest, delivery, and the social graph around them.
Auditability, enforceable contracts, fail-closed behaviour.
A Cloudflare Worker cannot open a TCP socket, so Kafka and CQL are permanently unreachable from the edge. The event is therefore written into a Postgres outbox inside the same transaction as the post, and a host-resident Go relay moves it onto a six-partition topic keyed by actor. Three independent consumer groups read it — feed materializer to Cassandra, notification worker to Postgres, fanout to realtime — each absorbing at-least-once delivery with its own named idempotency mechanism. There is no exactly-once claim anywhere in it, and there should not be.
26,176 lines of Go on Cassandra, Redis and Kafka: 1:1 and group chat, presence, typing, receipts, reactions, view-once media, voice transcription, push, and WebRTC call signaling. Twenty-nine test files including WebSocket benchmarks and dedicated race tests — plus an AsyncAPI coverage test that fails the build when the implementation and the contract drift apart.
A geo-partitioned Cassandra ranking pipeline, and the two best stories in the portfolio. Ranking loops wrote score updates using the region they were iterating rather than the region the user’s card lived in; because Cassandra UPDATE is an upsert, that silently created a phantom partition per user per region and leaked nameless cards into real users’ decks. Separately, a Redis consumer group’s pending-entries list had grown to 952 unacknowledged messages with no reclaim path. Both found, both fixed, both written up in-source.
Scored on an eight-signal rubric weighted toward what these loops test. Differences under about five points are ties, not an ordering.
The top three sit within 5 points of 120 — that is noise. GlobalChat edges the rubric on production evidence and breadth. The Activity Graph is listed first because it leads on the axis that decides a systems-design round: it is the canonical question, with every trade-off already written down.