Selected work
Systems we designed, built and shipped.
A selection of systems we have designed, built and shipped. Client names and logos are withheld by agreement, so these are described by sector and scope.
No invented metrics. These entries describe scope, not outcomes. We do not hold measured before-and-after data for these engagements, so we publish none — a conversion figure nobody recorded is fabrication, however good it looks.
A four-portal lending distribution network
One lending business, four completely different audiences — borrowers, financiers, channel partners and an internal operations team — each needing its own interface onto the same loan book.
We built four separate front ends against a single shared API rather than one application with permission flags bolted on. Each portal exposes only the surface its audience needs: borrowers see applications and repayment schedules, financiers see underwriting queues, channel partners see their own referrals and commissions, and operations sees everything.
The split matters more than it looks. A single codebase gated by role checks accumulates conditionals until nobody can say with confidence what a given user can see — which, on a system holding financial records, is the failure that ends up in a regulator's letter.
An EMI advisory platform for retail borrowers
A consumer-facing service that helps borrowers understand what actually drives their loan costs, and keeps them ahead of their repayment dates.
The product had two halves that are usually built by two different teams: a content engine that has to rank in search and load fast on a mid-range Android phone over patchy mobile data, and an advisory workflow holding borrower financial information.
We built both against one API, but drew a hard line between the public content surface and the authenticated advisory surface, so the pages that need to be crawlable are crawlable and the data that must never be are behind authentication.
A B2B travel and tour booking portal
A booking platform for travel agents, handling flights alongside curated personal and corporate tour packages.
Agent-facing booking is a different problem from consumer booking. Agents work at volume, know exactly what they want, and judge a system on how few steps stand between a query and a confirmed booking. The interface is dense on purpose.
Supplier integration was the engineering weight here: reconciling inventory and pricing from external sources that disagree with each other, and failing gracefully when one of them is simply down — without the agent losing the booking in progress.
A multi-campus school ERP
Admissions, attendance, fees, staff and academic reporting for an institution running several campuses under one administration.
Multi-campus is where most school software quietly breaks. Data has to be separated well enough that one campus cannot see another's records, and joined well enough that head office can report across all of them — and those two requirements pull in opposite directions.
We modelled the campus as a first-class scope rather than a column filter, which is what makes both the isolation and the roll-up reporting trustworthy instead of merely usual.
A specialist clinic's patient-acquisition site
A physiotherapy and rehabilitation practice that needed to be found by patients searching for treatment in their own city.
Almost all of the value here sits in local search. Someone looking for a physiotherapist is searching with intent, from a phone, near their home — so the site was built around treatment-specific pages, correct medical and local business structured data, and a route from landing to enquiry that survives a bad mobile connection.
No claims about clinical outcomes appear anywhere on it. Health copy that overstates is both a regulatory problem and, for a practice that relies on referral, a commercial one.
A marketing agency's site and lead platform
A services company whose own website had to be the strongest example of the work it sells.
When the product is credibility, the site is the proof. Everything measurable was treated as a build constraint rather than a cleanup task: self-hosted fonts so no visitor IP reaches a third party, a small critical bundle, and structured data covering the organisation, its services and its FAQs.
Every business-facing value — phone numbers, service names, claims — was made editable from an admin panel with the code as fallback, so the client can correct their own copy without a deployment.
Yours could be the next one.
Tell us what the system has to do and who it serves. We will tell you honestly whether it is work we should be doing.