01
Working software beats documents
The first milestone is always something you can open and click. Specifications settle arguments slowly and expensively; a working screen settles them in an afternoon.
About
Interface, API, database, mobile app, deployment. Not because generalists are fashionable, but because the expensive failures in software happen in the seams between specialists, and someone has to be responsible for the seams.
My work sits mostly in two places: health software, where being wrong has consequences, and developer tooling, where the users notice everything. Both teach the same discipline — that a feature is not finished when it demos, it is finished when it survives contact with people who did not build it.
I work as an individual rather than an agency, deliberately. It means fewer clients at a time, direct conversations with no account manager in between, and one person who understands the whole system rather than four who each understand a quarter of it. It also means I say no to work that does not fit, which I would rather do at the start than three weeks in.
Most of what I build is unglamorous: the document that has to generate correctly in three languages, the deployment that has to survive a restart, the migration that has to run once and cleanly. That is the work that decides whether a product is real.
Principles
01
The first milestone is always something you can open and click. Specifications settle arguments slowly and expensively; a working screen settles them in an afternoon.
02
If an estimate has slipped, a decision was wrong, or a feature is not worth building, you hear it that week. Bad news does not improve with age; it only gets more expensive.
03
The code, the repository, the cloud accounts, the pipeline and documentation written for the next person. No framework only I can run, no dependency on me by design.
04
Health records and personal details are handled as though they were mine. Least access, encrypted in transit and at rest, nothing collected that the product does not genuinely need.
Currently
Telehealth and chronic-disease products — appointments, prescriptions, cross-border payment for care, and AI features that summarise a patient's own history without inventing any of it.
A codebase-intelligence tool published on npm, used to make sense of large legacy systems that nobody remembers writing. Released under Apache-2.0 and tested in CI.
I keep a small number of engagements running at once. If the timing matters to you, it is worth asking early rather than late.
Next step
Half an hour, no pitch deck. If the answer is no, I will tell you that and suggest where to look instead.