What running it means when a round changes at 6am
Building software is the easy half. Here is what operating a real waste-collection platform taught us about the difference between shipping and running.
Anyone can say they build software. Fewer people have had their phone go at six in the morning because a bin lorry is at the depot and the round has changed.
We built and we run Star Refuse, a waste-operations platform for a collection service in St Ives, a driver app that captures transfer notes from the cab, and an operations dashboard that tracks every load from pick-up to deposit. It has taught us more about software than any tidy greenfield project ever could.
The demo is not the job
In a demo, the signal is good, the round is the one you planned, and the driver taps exactly where you expected. In the real world the lorry is in a granite valley with no bars, the regular driver is off, and a commercial customer has been added to the round overnight.
So the app had to work offline and sync later, not sometimes but every time, because a waste transfer note that didn’t save is a legal problem, not a missing row in a table. That single requirement, it must never lose a note, shaped more of the architecture than any feature on the roadmap.
You feel your own trade-offs
When you build and then leave, the cost of a lazy decision lands on someone else. When you run it, it lands on you.
We once made a screen “clever”: it inferred the waste type from the last few loads to save the driver a tap. It was a nice idea in the office. On the round it was wrong just often enough to be worse than useless, because now the driver had to notice the wrong default and correct it, every time. We took it out. The boring, explicit version was the right one. We only learned that because we were the ones fielding the “why does it keep guessing wrong” message.
Running teaches you what to build next
Operating the thing is the best product research there is. The features that matter are not the ones we imagined; they are the ones that came out of a real morning going wrong. A one-tap “same as yesterday” for a repeated round. A photo attached to a load without leaving the note. A depot view that answers “where is everything right now” in one glance, because that is the question that actually gets asked.
None of that was on a wishlist. All of it came from being on the hook.
Why it matters to you
If we are building your software, this is what you are buying: not just the code, but the judgement of a team that has felt the consequences of its own decisions in production. We build knowing we will be the ones running it, which is exactly why we build it to be run, and not just to be demoed.
That is the whole of “we build software, then we run it.” It is not a slogan. It is a phone that goes at six in the morning, and a platform quietly built so that it doesn’t.