Experienced Full Stack Developer specialising in React/TypeScript, Node.js, and backend APIs. Utilises AWS, Redis, PostgreSQL, Elasticsearch, and Kafka for application development, with expertise in data visualisation and Docker containerisation. Focused on observability, secure coding, CI/CD automation, and version control. Skilled in Mapbox/geospatial applications, contributing to technical leadership and mentorship within agile teams.
Overview
10
10
years of professional experience
4
4
years of post-secondary education
Work history
Lead Full Stack Developer
Vortexa
London, England
2024.07 - 2026.06
Own technical direction for customer-facing geospatial and analytics products built with React, TypeScript, Mapbox, Node.js, Elasticsearch, Redis, and AWS.
Took technical ownership of map and AIS reliability, delivering improvements to frontend performance, data quality, vessel trail accuracy, and operational resilience across customer-facing products.
Led multi-epic initiatives to improve geospatial visualisation accuracy and analytical correctness across map and voyage products.
Led delivery of analytical capabilities including voyage overlays, refinery overlays, hard data indicators, and voyages support in Excel Add-in, enhancing customer trust and decision-making.
Co-led migration to Elasticsearch v7, implementing critical platform upgrade that strengthened core search and analytics infrastructure.
Designed scalable architecture for incremental data delivery and change detection, supporting efficient synchronisation of large datasets across applications.
Owned delivery of multiple Excel Add-in 2.0 milestones, including Microsoft Store deployment, aggregations, scopes, and data refresh capabilities.
Developed internal QA tooling that reduced investigation time for AIS trail issues and streamlined cross-team debugging.
Lead cross-functional team of six engineers, providing technical leadership, mentoring, delivery ownership, and people development.
Drove adoption of Scrum practices across R&D and actively contributed to hiring, interviewing, mentoring, and developing engineers.
Senior Full Stack Developer
Vortexa
London, England
2022.06 - 2024.07
Led migration from Redux to TanStack Query and Jotai across five major product areas, reducing frontend complexity and improving maintainability at platform scale.
Delivered significant performance improvements through React Router upgrades, code splitting, and lazy loading, increasing Lighthouse scores from 52 to 84.
Implemented OpenTelemetry across APIs, developed internal SDK, and championed adoption through cross-team collaboration and engineering presentations.
Partnered with Product, Customer Success, and engineering teams to deliver customer-facing features, analytics capabilities, and platform improvements.
Led technical discovery, architecture discussions, and cross-team collaboration across frontend and backend initiatives.
Senior Front End Developer
Future Publishing
Bath, Bath and North East Somerset
2021.03 - 2022.05
My main achievement at Future Publishing was single-handedly developing TypeScript monorepo for new front end of Future Publishing CMS. This included:
Root repo built using Yarn Workspaces and Lerna.
Component library built using Material UI component library, Storybook, and Styled Components. This is hosted on private npm registry similar to Verdaccio and will be used as ‘de facto’ Future Publishing component library.
Front end built using Next.js, React Query, ReduxJS Toolkit, Axios and sprinkling of Ramda which is ‘spun up’ using Docker Compose to mitigate time it takes for new starters to get set up. It also uses Sentry to keep track of errors and bugs.
Linting and Typescript checking for entire monorepo.
Git hooks to perform unit tests on push, and ESLint/Prettier fixes on pre-commit.
Gitlab CI/CD pipelines to create new Docker images, perform end to end tests using Cypress, deployment via Kubernetes, and code sniffing through Sonarqube.
Improved Next.js build times by pruning unnecessary uses of getServerSideProps that were preventing automatic static optimisation. This involved using React hooks for client-side hydration, and setting cookies from Next.js middleware to be consumed by context provider pre first render for server-side data fetching.
Integrated new Next.js features like middleware to handle redirect logic, and to allow us to circumvent using getInitialProps to initialise pre-render state. This was mainly to facilitate feature flags that are required for A/B testing and app authorisation.
Created Github workflows to handle changesets file checks when certain conditions are met to make sure that PRs that required one weren't merged if it was missing, and developers weren't hassled to create one if it wasn't not needed.
Created and used codemods to change import syntax when moving packages and changing namespaces, and providing documentation to assist other developers in company when updating their packages to newest major release.
Married up changes during transition period which involved careful use of git cherry picking and close collaboration with teammates to minimise duplication and reemergence of deleted code.
Looked at best practices with regards to modern transpiling methods which included looking at helping to build proof of concept demos using TurboRepo, SWC and ESBuild.
Set up Vercel configurations and participated in meetings with Vercel enterprise representatives to discuss deployment best practices.
I was also involved in helping train some of junior and mid-weight developers, especially with regards to new tech that I introduced to front end teams. I also worked with CMS team lead developer to understand how career development plans work at Future, and I helped to create few of these for some of more junior devs on team.
Senior Front End Developer
Rovco
Bristol
2020.02 - 2021.03
Created AuthProvider library which uses JWT tokens to verify users' login credentials, and redirect them back to login page if it is required. This meant there was no need for HOCs such as PrivateRoute even though main focus was on developing a single page application.
Introduced ‘reselect’ library to help us to navigate complex APIs that relied heavily on expansion parameters in URLs.
Developed tools using Mapbox to enhance user navigation of data and files associated with their assets.
Introduced multiple Git hooks to ensure that code being pushed upstream is free of errors. Achieved this through use of tools such as Husky, ESLint, Prettier, etc.
Promoted workflow improving communication among all teams in product creation by developing UX stories signed off by all parties, enhancing buy-in and collaboration.
Gained understanding of Python and Django, exploring their applications within large-scale application.
JavaScript Developer
Actual Experience
Bath, Bath and North East Somerset
2017.05 - 2020.02
Contributed to Web UI team that developed data visualisation and admin dashboards using React, Redux, and D3 for enterprise-level analytic software.
Developed interactive globe app using Three.js, enabling customers to visualise their data location more intuitively.
Successfully integrated multiple HOCs throughout codebase to allow us to add commonly used props and functionality on the fly.
Keen user of unit tests which helped to facilitate BDD approach employed by test teams. To help facilitate this workflow I changed existing Mocha test suite to Jest. This allowed us to incorporate Enzyme into unit-tests, and gave us the ability to use snapshots to help with regression testing.
Used Immutable.js to ensure that state remained mutation free, but work was done to look at the feasibility of moving over to Immer.js.
Integrated Lerna into codebase to transition structure to a monorepo, improving versioning of multiple repositories into a single application.
Took project lead on multiple assignments and oversaw the workflow of my team from design through to testing and onto completion using Kanbanize to keep track of the cycle time of tickets.
Trained three team members on development tools setup (ESLint and Prettier for VSCode), guided them through codebase, and assigned 'quick win' tasks for faster contributions.
Gained experience configuring CI/CD pipelines using GitLab
Education
BA - English Literature and Creative Writing
Bath Spa University
Bath, Bath and North East Somerset
2007.01 - 2011.01
Skills
React / TypeScript
Nodejs / Backend APIs
Frontend Architecture
AWS, Redis, PostgreSQL, Elasticsearch, Kafka
Claude Code with MCP, skills and commands knowledge