Independent senior engineer. Leading an engineering team — driving app direction and architecture, owning UX and UI design, and shipping code daily across modern stacks and tooling.
I'm a senior software engineer working as an independent contractor. My focus is shipping production systems efficiently, across whatever surface the product needs.
My current work spans a wide surface area: technical strategy and system design, the architectural decisions that compound over time, heavy involvement in UX and UI design, and continuous cross-functional collaboration with product, design and business stakeholders. The role is fundamentally player-coach — leading a senior team while still in the codebase daily.
Underneath all of it, the things I optimise for are productivity and efficiency. Outcome-driven over output-driven. Every architectural decision, tool choice, and process is judged against the same question: does it let the team move faster without compromising quality? AI-augmented engineering — Claude Code, Copilot, the rest — sits at the centre of that, used deliberately rather than for its own sake.
Setting the technical direction. System design, stack choice, and the structural decisions that compound over the next two years — the difference between a codebase that accelerates the team and one that slowly drags it down.
Constant decisions across scope, speed, complexity and quality. The job is rarely about finding the right answer — it's framing the trade-offs clearly, making the call quickly, and keeping the team moving.
Heavy involvement in both user experience and interface design. Wireframes, flows, and visual decisions sit alongside the engineering work, not after it.
Working day-to-day with product, design and business stakeholders. Translating between disciplines, surfacing risks early, and making sure decisions actually stick across the people who need to act on them.
Leading a senior engineering team. Setting the bar, unblocking people, and keeping the work coherent across multiple parallel streams — without stepping out of the codebase.
Still shipping code daily. Modern stacks, clean APIs, and AI-augmented workflows. Leadership decisions land better when grounded in the same reality the team operates in.
Integrated into the daily workflow as core infrastructure. Used deliberately, with the same scrutiny as any other tool in the stack.