04 Oct 2026

About me — what I build and how I work

I'm a software engineer based in Cape Town with 4+ years in high-stakes production environments. I'm currently a platform engineer at Alliance Abroad, building agentic AI infrastructure and portal systems. Earlier, at Capitec Bank — where I led microservices migrations and built real-time payment integrations serving millions of customers. I'm available for contract and founding engineering roles, with a focus on agentic AI systems, MCP integrations, and fintech.

I build systems that watch themselves, so I'm not the one watching. Every agent I ship has a boundary, an audit trail and an off switch. Fixes land through a pull request, get verified live, and only then count as done.

When I joined Alliance Abroad there was one environment: development. No QA, no prod, nowhere to be wrong safely. Every mistake landed in the one place everyone was working. So the first thing I built was a way to be wrong cheaply. I stood up QA, rebuilt in Terraform so it could be recreated rather than repaired, tore out a legacy portal footprint running in dev and rebuilt that portal from greenfield, and gave every environment a promotion path and a gate: development to QA to prod, never skipping a step.

Then I turned to the tools I was using myself. Each service had its own keys and its own way of being called, so I put them behind one front door, the Alliance MCP Gateway. Every call is role-gated, audited, and made with the caller's own credentials. Once the front door existed, I could let machines through it. I moved the agents onto the gateway one by one, each with its own identity, narrow permissions and an off switch. They review PRs, promote builds, triage alerts and keep the docs true. When one breaks, another notices, diagnoses, fixes and verifies the fix.

I value autonomy and automation above interactive hand-holding. Systems should do the work, not ask for permission. Local-first, privacy-preserving architectures are the default — cloud services are a last resort. Complexity is a liability: simpler designs, even at the cost of features, are preferred over clever abstractions that add cognitive overhead. When something is broken, I fix the root cause. Workarounds and sunk-cost reasoning are explicitly rejected.

older AI tooling is infrastructure, not search — write your conventions down