Frontend & Product Engineer

I build the visible layer of products, designed with care and built to perform.

I'm a frontend engineer focused on the visual and product layer: how an interface looks, feels, and behaves under real use. For the past six years I've shipped at scale in regulated fintech, at Chase UK and Lendable, building performance-critical screens for millions of users, complex state machines, and GraphQL migrations in React and TypeScript. Outside of that, I follow the frontend problems AI products raise closely: streaming model output, agent surfaces, and designing for the moment a model call fails.

London·Frontend & product engineering·Curious about AI interfaces

I'm a frontend engineer who goes deep on the systems behind the interface. My work has lived in regulated financial services, where a screen isn't just a screen: it moves real money, and correctness, reliability, and performance come before velocity.

I've rebuilt performance-critical screens for millions of users, owned GraphQL and architecture migrations, modularised a growing codebase across squads, and led delivery end to end. As an engineering manager I now own cross-functional teams, lead engineers through growth and promotion, and carry the stakeholder and product relationships that keep delivery moving. That lens sharpens how I build, and building is still where I operate.

Outside work I take a close interest in the frontend side of AI products: streaming generation, agent authoring surfaces, communicating latency and uncertainty in the UI, and graceful degradation when models misbehave.

Associate Engineering Manager, Lendable Nov 2025 – Present

Own the frontend architecture and delivery of the Zable cross-sell origination engine, built in React Native on the SuperApp, integrating with the Loans backend. Daily origination volume roughly doubled, with sustained loan and volume growth since launch.

Built the team's observability practice from scratch (Sentry error monitoring, p95/p99 latency dashboards, structured alerting), and now drive observability standards across the wider engineering org.

Lead incident response across severities and own the integration layer between SuperApp and Loans: idempotent interactions, resilient failure handling, financial correctness.

Own end-to-end delivery for a cross-functional team, holding stakeholder alignment across product, design, and backend, and lead the engineers' development, feedback, and promotion cases.

Senior Software Engineer, Lendable Apr – Nov 2025

Project owner for loan servicing: migrated post-origination flows (repayments, term changes, account updates) from embedded web views to fully native React Native screens, with the state and error handling that money-moving flows demand.

Senior Associate Software Engineer, JPMorgan Chase Jan 2024 – Apr 2025

Led frontend architecture and delivery of Bonus Saver, a new savings product taken from technical investigation to market launch on a platform serving 2 million users.

Owned the accounts backend migration from a third-party provider to internal systems, backwards-compatible, with significant Apollo GraphQL architecture changes and zero customer impact.

Led codebase modularisation as the team split into two squads: new shared packages, zero cyclic dependencies, independent delivery.

Associate Software Engineer, JPMorgan Chase Aug 2021 – Jan 2024

Part of a four-engineer team that rebuilt the Chase UK home screen for 2 million users, with measurably faster account-widget load through rendering and data-fetch optimisation.

Led frontend development of the Current Account Switching Service using XState for complex state transitions, and refactored account opening into a Promise-based architecture with 100% unit test coverage.

Mobile Application Developer, Gobsmack Rewards Aug 2019 – Aug 2021

Built and maintained the Admiral, More Than, and Endsleigh Rewards apps using NativeScript and Angular.

01

Frontend Systems & Performance

React and TypeScript at scale. Rendering and load-time optimisation, profiling, and architecture that holds from prototype to production, including rebuilding the Chase home screen for 2 million users.

02

AI-Product Interfaces

Streaming model output, agent authoring surfaces, structured generation, and graceful degradation when a model call fails. Communicating latency and uncertainty in the UI without hiding it.

03

State & Architecture

XState for complex, regulated flows. Apollo GraphQL for data. Modularisation across squads: shared packages, no cyclic dependencies, independent delivery.

04

Delivery & Leadership

End-to-end ownership of cross-functional delivery: stakeholder alignment across product, design, and backend, plus incident response and observability where mistakes have real cost. As an engineering manager I lead engineers' growth and promotion, and bring that product and people judgement into the build.

Chase UK Home Screen Rebuild 2m users

Four-engineer team that rebuilt the primary screen for Chase UK's 2 million users, with faster account-widget load through rendering and data-fetch optimisation.

Bonus Saver Launch New product → market

Led frontend architecture and delivery of a new Chase savings product from technical investigation through to launch.

Accounts Backend Migration Apollo GraphQL

Migrated Chase UK accounts from a third-party provider to internal services: significant GraphQL architecture changes, backwards-compatible, zero customer impact.

Current Account Switching Service XState · 100% coverage

Built a complex regulated switching flow with XState for state transitions, and refactored account opening into a Promise-based architecture with full unit test coverage.

Zable Cross-Sell Origination Engine ~2× daily volume

Owned the frontend and integration layer for Lendable's cross-sell origination flow, roughly doubling daily volume with sustained growth since launch.

Always happy to talk frontend engineering and AI-product work. If you're building something interface-heavy, reach out.