I build the operational systems behind warehouse, dispatch and delivery work, from the web apps and .NET APIs down to SQL Server.
Moved a WinForms desktop system to Next.js and a .NET REST API with no downtime, and the cutover is complete. The migration used dual writes at the SAP ingest point, a compatibility view across both data models, and paired deploy, rollback and verify scripts for every change.
Merged duplicated business logic into single-source-of-truth procedures and tuned the slowest queries using production Query Store data.
Rebuilt goods checking as a Flutter app for handheld RF scanners, replacing a ten-year-old web client. Scanning the item QR is now required before work can reach dispatch, with a controlled path for damaged labels, which used to leave customers unable to claim cashback.
Rebuilt the driver app in Flutter for more than 100 drivers. Drivers can attach proof-of-delivery photos later the same day instead of at the doorstep while carrying paint, reverse a job closed by mistake, and review past jobs. Vehicle access control is built in.
Added freight billing and return-document tracking to the dispatch web app, with per-piece and per-route rates and a view showing where each returned bill is. Before, finding one meant asking around or calling.
Integrated delivery slot booking with a major Thai home-improvement retailer. Every supplier truck needs a booked slot to enter a branch, which used to take 10+ clicks per PO in the retailer's vendor portal. It now takes 2, suppliers book their own slots, and it is in daily use after I took it from UAT to production.
Set up guardrails for AI agents working in this codebase: 23 routing-matched skills, a machine-checked routing matrix, and a pre-commit gate that fails the commit when routing regresses.