01 · The challenge
A trading-automation business needed to offer arbitrage scanning and execution to a base of subscribers - reliably, at scale, behind subscription access control.
02 · What I built
A production backend that scans exchange spreads on a fixed cycle, serves ranked opportunities to subscribers, executes hedged orders on two exchanges in parallel, and streams live market data to every connected client.
03 · The hard part
Serving many subscribers without hammering exchange APIs or exceeding rate limits. I built a cache-first architecture where a scheduler refreshes data centrally and all requests read from cache, plus a demand-driven WebSocket layer that only subscribes upstream to symbols clients actually want, with batching and automatic cleanup.
04 · The outcome
Sub-millisecond cached responses regardless of load. Parallel dual-exchange execution. Runs clustered across multiple worker processes for real production traffic.
05 · Stack