uNation · Application development · 2024
Rebuilding event discoveryso a whole city fits in one feed
3.4×
faster event search across the full catalogue
41%
more events saved per session
9→1
days to ship, down from a fortnightly train
0
P1 incidents in the 90 days after launch
01 — The challenge
Growth had outrun the search index, and everybody knew it.
The catalogue had grown past what the original query layer was built for. Discovery pages timed out at peak, ranking was a hand-tuned list of rules nobody wanted to touch, and every release needed a two-week freeze.
The team knew what was wrong. What they didn't have was the bandwidth to fix the foundations while shipping to a seasonal calendar that never paused.
No downtime window before festival season
Existing team of four stayed on feature work
Hand over fully within seven months

02 — What we did
Four moves, in the order that de-risked the next one.
Instrument before touching anything
Two weeks of tracing showed the real cost sat in a fan-out query nobody suspected. That finding rewrote the plan we'd been hired to execute.
A read model beside the old one
New search served a slice of traffic behind a flag while the legacy path stayed live. Rollback was one toggle for the whole migration.
Ranking that people can reason about
Learned relevance with an explainability panel, so the content team could see why a result placed where it did — and challenge it.
Handover as a deliverable, not an email
Runbooks, load tests and a fortnight of pairing. The client's own team ran the final cutover while we watched the dashboards.
"They found the actual bottleneck in week two — it wasn't the thing we'd hired them for."

Nathan Reyes
Got a bottleneck you can't quite name yet?
That's usually the best time to talk. Thirty minutes, no pitch deck.


