AboutThe path

Leading teams, still in the code.

I came into engineering from banking management, was handed a team almost immediately, and have spent every role since refusing to give up either half of the job.

Mathew Fanning, Founding CTO & software engineering lead

I came to engineering late, and sideways. Before 2013 I managed teams in retail banking, and when I switched to writing JavaScript I expected to spend a long stretch as an engineer before anyone asked me to run anything. That is not what happened. I joined Weather Decision Technologies as a JavaScript Engineer in 2013, and by 2016 I was VP of Web Development, leading a team of twelve and working directly with the CTO and the other department leads. I read that jump as the banking years carrying over — I already knew how to run a team, so the moment there was a team to run, I was the one running it.

In 2018 I did something that looks like a step backwards on paper. I left the VP title to become Lead Frontend Engineer at FieldVision, a lean startup on a modern stack where I was also its only frontend engineer, and I did it deliberately. I wanted to find out what I actually liked about this work before I committed the rest of my career to managing it. For three years I owned the whole frontend of a game-film analysis platform used by several hundred teams, including the video review and clipping tools, which I hand-rolled. The answer I came away with has decided every role since: I did not want out of the code, and I did not want out of the room where the decisions are made.

The two contracts that followed were both that shape. At NIPR I was Lead Frontend Engineer, and the work was to get the frontend out of a Java monolith and into a standalone React and TypeScript application with its own CI/CD — then to help hire the three engineers who would own it, and train them to the point where they did not need me. The contract ended in December 2023 with the codebase in their hands. At Sparq I ported a client's production application from ColdFusion to React and TypeScript, feature by feature, and sat on the hiring panel. Neither job was purely management or purely engineering, which is exactly why I took them.

Since September 2025 I have been Founding CTO at Okie Music Collective, where I am also the only engineer: a Next.js marketing site, a React and TypeScript web app, paying subscribers, and a React Native app in development. It is the smallest version of the job and the least forgiving one — every technical decision is mine, and the people paying for it find out quickly which ones I got wrong. What I am looking for now is the larger version of the same job: a team to build, the standards they ship by, and enough proximity to the work that the engineers I lead believe I understand what I am asking of them.

How I lead

  • The work isn't done when it ships. It's done when the team can change it without me.

    At NIPR the target was never a finished migration — it was three engineers who could take the next decision without me. I helped hire them, trained them, and the contract ended in December 2023 with the codebase in their hands. A system only one person can change hasn't removed risk. It has concentrated it.

  • Great people outweigh great process.

    Process exists so good engineers don't solve the same problem twice. It is not a substitute for hiring them, and it will not rescue a team assembled badly — which is why I spend the time at the front of that, on the hiring panel. The larger the team gets, the more of my job is building the process they never have to think about.

Roles

  1. Okie Music CollectiveFounding CTO (fractional)Sep 2025–present
  2. SparqLead Consultant (consulting)Dec 2023–Mar 2026
  3. NIPRLead Frontend Engineer (contract)2021–Dec 2023
  4. FieldVisionLead Frontend Engineer2018–2021
  5. Weather Decision TechnologiesVP of Web Development2016–2018
  6. Weather Decision TechnologiesJavaScript Engineer2013–2016