Services
Three ways in, one engineer behind all of them.
Most clients arrive with one of three problems: they need something built, they need something kept alive, or they have a system that has quietly become too old to change safely. The services below cover all three, and they overlap freely — a modernisation usually ends on a support plan.
New application development
A working system in production, built in phases you can see and stop between.
Full delivery of a new application: domain and data model, API, security, the admin and user interfaces, deployment and CI/CD. Work is broken into phases with a demonstrable result at the end of each, so you are never funding six months of invisible progress. AI-assisted delivery means the first working slice arrives in weeks rather than quarters.
What you get
- Written architecture and data model before code is cut
- Layered application: domain, application services, infrastructure, API
- Authentication, roles and permissions designed in from the start
- Admin and end-user interfaces built to one consistent standard
- Automated tests and CI/CD pipeline delivered with the system
- Handover documentation and a runbook
Application support & maintenance
A known response time and a known monthly cost, instead of emergency invoices.
Ongoing care for a system in production — yours or one I built. Uptime monitoring, security and dependency patching, incident response, and a block of development hours each month for the changes the business keeps asking for. Sold as a monthly plan or as prepaid hour blocks you draw down at your own pace.
What you get
- Defined response times by severity
- Security patching and dependency upgrades
- Uptime monitoring with alerting
- Included development hours every month
- Release management and staged deployments
- Quarterly health report on risk and technical debt
Legacy modernisation & upgrades
Systems that still earn their keep but have stopped being safe to change.
Unsupported framework versions, a runtime past end-of-life, no test coverage, and the developer who wrote it left in 2019. Modernisation runs incrementally — the old system is replaced a module at a time behind a stable interface, so the business keeps trading throughout. AI-assisted analysis makes the first step, understanding what you actually have, dramatically cheaper than it used to be.
What you get
- Written assessment: what to keep, replace, and in what order
- Framework, runtime and dependency upgrade path
- Incremental migration behind a stable interface — no big-bang cutover
- Test coverage introduced around the seams before anything moves
- Secrets moved out of config and into managed storage
- Modern deployment to replace manual releases
Multi-tenant SaaS & B2B platforms
Systems where accounts, branches, roles and isolation all have to be exactly right.
Platforms serving many customer organisations from one system: tenant isolation enforced at the data layer, a role hierarchy from platform administrator down to end user, per-tenant branding and subdomains, and safe support access into a customer's account. This is the work I do most, and the area where getting the model wrong is most expensive to fix later.
What you get
- Tenant isolation enforced by query filters, not by developer discipline
- Role hierarchy: platform admin, account admin, branch manager, member
- Subdomain-based tenant resolution and per-tenant branding
- Read-only support impersonation with a full audit trail
- Account lifecycle: activation, suspension with auto-expiry, deletion
- Bulk import and onboarding tooling for new tenants
Cloud, identity & data on Azure
Infrastructure sized for the business you have, with a path to the one you want.
Azure-first architecture: App Service and Static Web Apps, managed SQL, storage, identity and CI/CD — designed so the monthly bill is predictable and deployments are unremarkable. Includes migration off ageing servers, secrets management, and getting backups to the point where someone has actually tested a restore.
What you get
- Architecture review with a cost model before anything moves
- Azure setup: compute, managed data, identity, networking
- CI/CD pipelines and a real environment strategy
- Secrets out of source control and into managed secret storage
- Backup, restore-testing and monitoring
- Migration from on-premise or outgrown hosting
AI capability inside your product
Applied where it pays for itself, and honestly left out where it doesn't.
Document extraction, search across your own content, drafting, classification and assistants — wired into the systems you already run, with evaluation and hard cost controls in place. Part of the engagement is the honest answer about whether a use case earns its keep, which is sometimes no.
What you get
- Use-case assessment with cost, risk and accuracy estimates
- Retrieval over your own documents and data
- LLM features with evaluation harnesses and guardrails
- Human review built into anything consequential
- Token cost monitoring and hard budget limits
- A fallback path for when the model is wrong or unavailable
Sectors
Where this work tends to land.
- Wholesale & distribution
- B2B commerce
- Professional services
- Manufacturing
- SaaS operators
- Logistics
Next step
Most engagements start with a 30-minute call.
No pitch deck and no discovery invoice. We talk about what you're running, what hurts, and whether I'm the right person to fix it.