With over 18 years of experience specialising in front-end web development — and comfortable across the entire stack — I’ve worked across a range of business sectors including fintech, health, music, and most recently energy trading.
As a Staff Engineer and web team lead at Dare, I maintained mission-critical ETRM software, led development on an Electron-based desktop application, and built a component library that brought consistency and scalability to their core product. This role deepened my interest in design systems and the outsized impact they can have on complex, data-heavy applications.
I’m passionate about user interface design, accessibility, inclusivity, and performance — believing that what we build has to work for the greatest number of users. My core expertise is in the broader JavaScript ecosystem, with particular depth in React, Next.js, TypeScript, and GraphQL.
I’m also a firm believer in the power of AI-assisted development. My deep understanding of the web platform means I’m well-placed to guide and orchestrate AI agents effectively — using them to accelerate the right things without sacrificing quality. In my experience, the engineers who get the most out of these tools are those who know when to lean on them and when to pull back; throwing too many concerns at an agent at once is a fast path to technical debt. Thoughtful, directed use is where the real productivity gains are found.
I care about the long-term impact I can have within a team: writing maintainable code, raising standards, and helping those around me do their best work
Experience
Staff Software Engineer
As a Staff Engineer and lead of the web team, I was responsible for maintaining and evolving Dare's core ETRM (Energy Trading and Risk Management) system — a complex, data-intensive platform handling real-time trading data via WebSockets and NATS messaging. I also led development on their Electron-based desktop application, ensuring a consistent and reliable experience across both web and desktop surfaces.
A significant part of my role was building a new component library from the ground up, bringing visual and functional consistency across the product suite. I also introduced and championed improved testing practices and CI/CD workflows to raise the overall quality and confidence of releases across the team.
Stack: React, micro-frontends with RSBuild, Electron, TypeScript, Tailwind, shadcn/ui, Vitest, Playwright, WebSockets, NATS, CI/CD with GitHub Actions
Product Engineer
Working across multiple concurrent client projects, I delivered front-end engineering across a diverse range of financial products. This included a cryptocurrency exchange platform for Tradeblock, investment banking applications for Commerzbank and Clearwater Analytics, and a full React app rebrand for Cappitech. Each project required quickly getting up to speed with an existing codebase and delivering quality work within tight timelines.
Stack: React, Next.js, Vite, TypeScript, Node.js services, OpenAPI schemas, MUI, Storybook, Vitest, Cypress, Playwright, CI/CD with GitLab & GitHub
Senior Front-end Engineer
Part of a strong contractor team rebuilding Rostr 2.0 — a comprehensive music industry database often described as "the IMDB for music". I contributed to delivering a performant, well-tested application using Remix, which brought server-side rendering and improved data loading patterns compared to the previous version.
Stack: React, Remix, TypeScript, Node.js services, MongoDB, Chakra UI, Storybook, Cypress, CI/CD with GitLab
Senior Front-end Engineer
Contributed to two of Babylon's core internal platforms — a patient and clinician management tool for staff, and a clinical consultation interface used by NHS GPs and other healthcare professionals. Both were complex, high-stakes React applications with robust testing strategies and strict release processes, given the sensitive nature of the domain.
I also played a key role in an architectural migration project, converting both applications into a micro-frontend architecture using single-spa — improving scalability and enabling teams to work more independently on each surface.
Stack: React, TypeScript, GraphQL, Apollo, Micro-frontends (single-spa), Formik, MUI, Storybook, Cypress, CI/CD with GitHub Actions & CircleCI
Lead Front-end Engineer
As lead front-end engineer, I guided a small team to ship two full applications within nine months, alongside a continuous stream of user-facing features and iterative improvements. The platform served both internal and external clients, requiring careful attention to usability and reliability across a varied user base.
The tech stack was notably broad — spanning a GraphQL and Hasura backend, Firebase for authentication, functions and hosting, and a rich front-end built with React, Radix UI and Nivo charts — and I was responsible for making sound architectural decisions across all of it.
Stack: React, TypeScript, GraphQL, Hasura, Firebase, Vite, React Query, React Router, Formik, Theme UI, Radix UI, Nivo charts, Storybook, Cypress, CI/CD with GitHub Actions
Senior Front-end Engineer
In just seven weeks, I built a bespoke component library from scratch and completed a full platform migration from Shopify to Gatsby, delivering the relaunch on time ahead of a crowdfunding round that went on to be very successful. The tight deadline and high stakes made this one of the more intense and rewarding contracts of my career.
Stack: React, TypeScript, Gatsby, GraphQL, React Query, Storybook, Contentful, CI/CD with CircleCI
Senior Front-end Engineer
A series of short contracts spanning fintech, local government, and e-commerce: contributing to internal and external applications at fintech startup Club View; maintaining three in-house web applications for Hackney City Council via Digi2al; and delivering e-commerce features for doTERRA's marketplace via WQA.
Stack: React, TypeScript, Next.js, GraphQL, Apollo, Saleor, Redux, Fastify, PostgreSQL, TypeORM, Storybook
Senior Front-end Engineer
Delivered two significant pieces of work during my time at Curve: a web component for their Samsung Pay Card integration, and the first version of Curve's web design system — which went on to underpin the full redevelopment of curve.com, their public-facing website. It was a great opportunity to establish front-end foundations that would scale across the company's web presence.
Stack: React, TypeScript, Next.js, Gatsby, xState, Theme UI, Storybook, Contentful
Senior Front-end Engineer
Started as lead developer across various projects before joining the core team behind the "Equals Go" card — one of the company's flagship products. A highlight of this contract was designing and building the "Fuji" design system, which was adopted across all of the company's web applications including React Native, demonstrating its versatility and the quality of its foundations.
Stack: React, TypeScript, Next.js, Redux, Redux Saga, Styled Components, Storybook, Prismic CMS
Front-end Tech Lead
Brought in to lead and grow Nimbletank's web platform team, I was responsible for both hands-on engineering and broader technical leadership. This included front-end development across complex single-page and server-rendered React applications, composing technical approach documents, contributing to pitch preparation and presentations, and establishing a robust code review process that raised the quality bar across the team.
Stack: React, Next.js, xState, Storybook, Prismic
Creative Technology Lead & Consultant Creative Technology Lead for Navigate Unlimited
Spent five years at TMW, progressing from Creative Technologist through to Creative Technology Lead — a trajectory that reflects both my technical growth and increasing leadership responsibilities. As scrum master and lead developer across a wide range of projects, I delivered global brand sites (including barilla.com), games, apps and interactive prototypes for major clients. I also consulted as Creative Technology Lead for Navigate Unlimited during this period.
Lead front-end developer and designer
Championed a modern, standards-based development approach across a range of web projects, leading both the front-end engineering and design work.
Lead Front-End Developer, Designer, Freelancer, Assistant Cameraman
Prior to specialising in front-end engineering, I worked as a freelance web designer and developer, and as an Assistant Cameraman on UK film and TV productions. This varied background — spanning technical, creative, and production disciplines — informed the broad, user-focused approach I bring to engineering today.