Portfolio

Six systems, still running

Every system here is in production today, every one is measured against figures the client tracks themselves, and every one sits under ongoing support. Clients are described by sector rather than by name because the work was done under commercial confidentiality.

Field technician closing out a maintenance job on a handheld tablet
Operations

Field Service Operations Platform

A WA utilities maintenance contractor kept job evidence on carbon-copy dockets that sat in a ute for days before reaching an administrator, who retyped them into payroll, the asset register and a costing spreadsheet. Disputed overtime was routine and nobody knew where a technician was at 2pm. One platform now covers work order scheduling, offline mobile capture, photo evidence, asset service history and a payroll-ready export. Work closes the same day it happens, supervisors see live job state across every depot, and nothing depends on handwriting that survived the weather.

React.NETPostgreSQLAzure
62%
Faster job close-out
Nil
Dockets lost
3
Systems retired
Read the case →
Integration monitoring dashboard showing message flow between business systems
Integration

ERP & CRM Integration Hub

A national wholesale distributor had accumulated fourteen connectors between ERP, CRM, a 3PL and its web store — scripts, nightly CSV drops and one FTP job untouched since 2017. Orders duplicated silently, stock was oversold online, and two administrators spent most of Friday reconciling. Their ERP offered nothing modern, so we built a hub with a canonical order model on a message broker: idempotency keys, dead-letter queues, retries with backoff, contract tests and operators who can see where a message stalled. Schema changes go through contract tests, so nobody rebuilds a week of orders by hand.

PythonNode.jsRabbitMQAWS
99.8%
First-pass sync
14
Connectors retired
26 hrs
Weekly reconciliation gone
Read the case →
Customer portal screen listing order history and pending approvals
Web Application

Client Self-Service Portal

An industrial supplier took most orders by email, answered pricing and credit questions phone-call by phone-call, and watched approvals stall in someone’s inbox during leave. We built a self-service portal over their existing SQL Server estate: contract pricing, live stock availability, order history, document download and a configurable approval chain that escalates on its own. Role-based access lets a branch manager see the whole account while a site foreman sees only their orders. Support call volume fell by nearly half and approvals move in hours, because the system chases the approver rather than the sales team.

VueLaravelSQL ServerAzure
48%
Fewer support calls
91%
Orders self-served
4 hrs
Approval turnaround
Read the case →
Server infrastructure during a staged relocation to cloud hosting
Cloud Migration

Legacy Platform Cloud Migration

A manufacturing group ran a fifteen-year-old line-of-business application on a single rack in their own building, with tape backups nobody had tested and disaster recovery that existed only on paper. A rewrite was ruled out — too much undocumented behaviour had accumulated. We moved it to AWS in four stages: infrastructure in Terraform first, then asynchronous replication and a read-only period, then cutover inside a declared AWST window, then decommission. Releases became routine changes instead of evening events, infrastructure spend fell materially, and restore testing is now repeatable: backups are verified on a schedule rather than assumed.

.NETTerraformAWS RDSDocker
41%
Lower infra spend
40 min
Release window
99.97%
Platform availability
Read the case →
Warehouse worker scanning stock with a handheld barcode reader
Operations

Inventory & Warehouse System

A food distribution business counted stock weekly on paper across four sites, then reconciled against an accounting package that knew nothing of bins, batches or expiry. Picking accuracy depended on who was rostered and oversell was absorbed in credit notes. We built real-time inventory with barcode-driven receiving, directed put-away, batch and expiry tracking, cycle counting instead of the weekly shutdown, and dispatched confirmations posted straight to finance. The office sees one stock figure, not four versions of it, and discrepancies surface the day they occur rather than weeks later, and the weekly shutdown count is gone.

ReactNode.jsPostgreSQLAWS
99.4%
Stock accuracy
22%
Less safety stock
96%
Same-day dispatch
Read the case →
Compliance officer reviewing automated evidence reports on a laptop
Automation

Compliance Reporting Automation

An aged care and disability services provider assembled quarterly regulator reports by hand: export three systems, email managers for supporting evidence, paste screenshots the night before the deadline. Audit requests meant a fortnight of archaeology. The real problem was evidence, not reporting — it was being created in emails and PDFs instead of at the point of work. We automated collection into a warehouse and moved capture into operational workflows, so every completed action writes its own record and no claim lacks an attestation. An audit request no longer triggers a fortnight of archaeology.

PythonPower BIAzure SQL
5 hrs
Report preparation
100%
Evidence captured
2
Roles redeployed
Read the case →
The pattern

What these projects have in common

None began as a software purchase. Each started with an operational failure: a missing docket, a duplicated order, a report nobody could assemble.

They are operational systems, not brochures: scheduling boards, bin locations, message queues, payroll exports — places where a wrong number costs money the same day. The interface must work on a cracked screen in a depot yard, in daylight, with gloves on, and the database must stay correct when the network drops halfway through a job. Failure behaviour therefore matters more than polish: retries, queues, reconciliation and a clear picture of what is stuck are treated as features, because the interesting question was never what happens when everything works.

All six are integration-heavy. The ERP stays, as does the accounting package and usually a 3PL file drop from another decade. The value came from making those pieces agree with reality rather than replacing them, which is why none of these projects began with a procurement decision. Where a vendor would not supply an API, we worked around it; where a nightly file was the only option, we made it observable, idempotent and safe to re-run.

Measured afterwards

Agreements written before build state numerically what “better” means — close-out time, duplicate rate, manual hours — and those figures are reported monthly, so nobody argues from memory.

Supported continuously

Each sits under an arrangement covering patching, monitoring, a response target for AWST business hours and a fortnightly backlog. Support outlasts the build, which changes how the build is done.

Yours to keep

Source code, infrastructure definitions, data dictionaries and runbooks transfer to the client, with no proprietary runtime holding anything hostage if support moves.

0
Platforms live today
0
Integration endpoints
0
Longest-running support
0
Sectors represented

See whether your operation fits this pattern

A 45-minute scoping call, AWST hours, no obligation.

Request a Quote