My career looks like three different jobs. It is one habit. Find the work people do by hand, understand it well enough to know what is safe to remove, then build the system that does it. The tools changed from Python scripts to report engines to AI agents. The habit did not.
The path
2018 – 2020
The factory floorProcess Engineer, a US plastics manufacturer
Ran more than 50 process-improvement projects. On my own initiative, I replaced the plant’s paper data-collection system with a mobile app and Python scripts. The plant had real-time process data for the first time. The same period produced a US patent.
The lesson I kept: the hardest part of automation is never the code. It is understanding the process well enough to know what is safe to remove.
2021
A deliberate pivotPostgraduate Certificate, Business Administration, York University
Moved from the United States to Canada and studied business administration, finishing with a 4.0. I made the change to software on purpose, and I brought the business half with me.
It is why I ask who uses a system, who pays for it and who carries the risk before I ask how to build it.
2022 – now
Platform work for real customersSoftware Developer, then Senior Software Developer, a construction-technology SaaS company
A platform used by municipalities and engineering consultancies across Canada, the US and the UK. I learned the domain by building the documents customers actually read: inspections, payment certificates, tenders.
About 75 customer organizations served with bespoke reporting, financial documents and integrations.
673 merged pull requests.
Replaced hand-coded report generators with a template engine. A new client deliverable now needs 95% less custom code.
Delivered a commissioned Android app to a US civil-engineering consultancy in 12 weeks.
Sole owner of the mobile client. Mentor to three junior developers.
2026
Agents, behind a gateAn internal agent harness, designed and built solo
I built the layer around the model: tools, guardrails, memory, evaluations and an autonomous work loop. Then I ran real production work through it. One policy file compiles into the permission gates of two agent runtimes. Everything irreversible stays with me.
31 production tickets worked in 10 weeks, each with a written root cause and verification.
88 read-only tools over a production database and a support desk.
21 harness incidents recorded, each one promoted into a control.
Alongside, side projectsEvenings and weekends, built to learn
Since mid-2025 I have used side projects to learn what my day job does not teach, and I build each one to production standard: ChiOS, the app I run my life on, which agents reach through a 200-tool MCP gateway; chi-harness, a personal agent harness where safety lives in code; a desktop search tool that runs a local model; and a Go authentication library.
Some are deployed and I use them every day. They exist for skill advancement: new languages, edge platforms, security done properly, and agents as users of software. Building for real use is where the learning is.
Harnesses, MCP servers, policy-as-code, evaluations and telemetry. The model is a part that will be replaced. The harness around it is the asset.
Products, end to end
From the schema to a signed release.
Data model, authentication, API, web, mobile and deployment. I pick the language the problem wants: TypeScript, Go, Python, C# or SQL.
Customer delivery
Shipping what customers need, into production.
Four and a half years of bespoke engines, integrations and a commissioned app for municipalities and engineering firms. Comfortable reading a client’s spreadsheet macros, in English or French.
Engineering roots
Systems, flows and failure modes.
Chemical engineering and process control taught me to respect the process before changing it. A US patent and a peer-reviewed paper came out of that work.
How I work
“Anything you actually require must be enforced somewhere the agent’s reasoning cannot reach.”
On guardrails. Prompts are suggestions. Gates are law.
“A silent no-op reads exactly like a pass.”
On verification. A check that cannot fail is not a check.
“Every rule sits on a rung. One observed violation promotes it one rung.”
On incidents. Prose, then a checklist step, then a script, then a hook.
“Evidence before diagnosis.”
A hard rule, written after two confident fixes failed before anyone read the logs.
Experience
Senior Software DeveloperA construction-technology SaaS company2025 – now