The problem

The client’s live-sports data pipeline had failed on every major event weekend for over a year. Match results took minutes to appear in the app. Standings lagged by hours. Every weekend engineering was firefighting the same shape of incident: queue backpressure, dropped events, then a cascade of stale data across product surfaces.

The team had rewritten the ingest layer twice. Both rewrites shipped, and both failed under peak load within a month.

What I did

I ran a two-week focused discovery before touching any code.

The discovery ended with a written plan, not a proposal. Three phases, with a stop-work checkpoint at the end of each.

The build:

Outcome

By week ten:

Just as important: the team stopped firefighting weekends and started shipping features again. The first new feature — historical replays — shipped six weeks after the pipeline stabilized. It had been backlogged for nine months.

The stack

Go, Postgres (logical replication and advisory locks), a small durable-log helper library the team now owns, and boring observability with Prometheus and Grafana. No queues, no orchestrators, no service mesh.