wenlarge
← All posts

Why we run our own products

There's a category of bugs you only meet after launch. The invoice that's wrong once a month because of a month-boundary edge case. The notification that fires at 3 a.m. for users in the wrong timezone. The query that's fine at ten thousand rows and takes the database down at ten million.

If you only build software and hand it over, you never meet these bugs. Someone else does, months later. We meet them ourselves, because we run our own products with our own support inbox and our own on-call.

That has changed how we build for clients in concrete ways. We design database schemas for the data volume of year two, not the demo. We put logging and dashboards in before launch, because we know which ones we reach for during an incident on our own systems. We write handover docs for the engineer reading them at 3 a.m., because we've been that engineer.

It also keeps our estimates honest. When we say a feature takes three weeks, that includes the part where it has to keep working, not just the part where it works once in a demo.

The two sides of the business feed each other. Client work funds product development; product work is where we learn the lessons clients pay for. We intend to keep doing both.

Working through something similar?

Get in touch and we can talk it through. The first call costs nothing.

Get in Touch