J. Michael Duhart · available, fully remote
I build distributed systems and I can show you the code.
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.
Three claims, three proofs
3independent Kafka consumer groups off one activity log, fed by a transactional outbox
The activity graph →
952orphaned messages in a Redis consumer group's pending-entries list — found, explained, reclaimed
The war stories →
If you're hiring, start here
Four pages each. Pick the column that matches your stack —
it will take about ten minutes and you will know whether to call.
Tier S — the three that carry an interview
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.
All twenty-eight, ranked
Scored on an eight-signal rubric weighted toward
what these loops test. Differences under about five points are ties, not an ordering.
1Billboard Activity GraphGo · outbox → Kafka → three consumer groups103
2GlobalChat Realtime MessagingGo · Cassandra, Redis, Kafka, WebSocket106
3Match Service — Distributed RankingGo · geo-partitioned Cassandra, Redis Streams101
4Solomon — Serving, Kubernetes & AutoscalingPython · k3s, Helm, HPA, continuous batching90
5Solomon — LLM Platform (umbrella)The whole pipeline, end to end89
6Billboard Production HardeningTypeScript · RS256, 9 tables, CI contract gates84
7WebRTC Calling PlaneGo · ICE/STUN/TURN, a fatal map race located83
8Media & Upload InfrastructureGo + TS · R2 multipart, IngestDO, TUS80
9Push & Notification PipelineGo · Kafka → APNs + PushKit VoIP79
10Solomon — Retrieval & Agent TierGo · index, agent loop, grounding guard75
11Platform Operations & CI/CDsystemd, Compose, two CI systems, six gates73
12Auth & Identity PlatformGo · gRPC/Connect, RS256, 24 protobufs70
13GlobalChat Messaging UISwift + React · transport/store/runtime split70
14Realtime Gateway TrioGo · 48,582 lines over Kafka + Cassandra69
15Cloudflare Edge PlatformTypeScript · 10 Workers, D1/R2/KV/DO68
16Solomon — Evaluation Gates & PromotionNine release-blocking gates65
17Solomon — Training & Experiment TrackingMLflow, SHA256 manifests, val PPL 40.063
18Dating Swipe Deck & Discovery UISwift · 90,161 lines; 49 audited findings62
19BoxOffice & the Moderator ConsoleSwift + Next.js · statutory-deadline operator UI61
20OpenHouse GlobalTypeScript · 7 forward-only CQL migrations57
21Billboard Player — Audio UI & EngineSwift · actor-isolated AVPlayer, vDSP FFT56
22Palantir J8 — Exhibit FactoryPython + React · fail-closed financial ingest55
23Multiplatform Clients (umbrella)611K lines Swift, 19-module Compose port54
24Solomon — The TransformerPyTorch from the paper; KV cache proven equal53
25Web Platform UINext.js · every mode, generated protobuf clients51
26Solomon — Corpus, Tokenizer & Data Governance130M tokens, 0 UNK, contamination checks46
27Technical Documentation CorpusThree 17–20 chapter manuals with gap registers39
28Portfolio & Marketing InfrastructureCloudflare Pages; a DNS plan that saves your email17
Infographics
Also worth your time