Appearance
Projects
A selection of notable projects from my career as a freelance frontend developer.
AlphaFold Server — Google DeepMind
Angular · TypeScript · Google coding standards
Worked on the web application for DeepMind's AlphaFold Server, a globally used research tool for protein structure prediction. As part of a small team, I built new features and maintained the production codebase.
Key work:
- Migrated all site content from hard-coded HTML to Markdown, sourced from Google Docs
- Built an image zoom feature in the Guide section to help users navigate the tool
- Developed and shipped features to Google's internal Angular and TypeScript standards
BT Sports TV Network Map — BT
React · LeafletJS · GraphQL · REST
Sole frontend developer on an internal tooling project to visualise BT's Sports TV network infrastructure across the UK, with global capability. The app let engineers see existing cable connections before commissioning new work, preventing costly and redundant projects.
Key work:
- Built an interactive map with LeafletJS, rendering cable lines and detailed point information
- Integrated REST and GraphQL APIs to load and display large datasets on the map
- Optimised search using local storage for internal codes to keep performance fast
- Extended BT's internal React component library to follow brand guidelines
RealWear Reseller Workspace App
Angular · TypeScript · NX mono-repo
Built an application for RealWear's reseller network to manage client workspaces and oversee headset fleets. Part of a broader effort to standardise UI across all RealWear products.
Key work:
- Developed the workspace management feature from scratch
- Created a shared component library used across all RealWear web applications
- Set up Storybook for building, testing, and documenting components
- Implemented Jest for unit tests and Cypress for E2E tests
Twilio Video Call Web App — RealWear
Angular · Twilio · TypeScript
Web application enabling three-way video calls between RealWear headsets and mobile devices. The project directly contributed to increased headset sales by enhancing the user experience for RealWear's customers.
Key work:
- Integrated Twilio's video SDK to support multi-party calls
- Built responsive UI for both mobile and desktop viewpoints
- Delivered as part of NX mono-repo alongside other RealWear applications
AI-Driven Document Review Apps — RehabAgency
Angular 17 · TypeScript · SCSS · GCP
Took over frontend development of three AI-powered applications for a major client. The apps allow users to enter document overviews and receive AI-generated alternatives and considerations for their reports.
Key work:
- Matched UI implementation precisely to the client's global branding
- Deployed all three applications on Google Cloud Platform
- Delivered within a tight deadline with no prior handover
BT Sports Training Platform — Solirius Consulting
Angular · Twilio · Accessibility
A video-based training platform for a consultancy specialising in business mergers, providing live and recorded lessons to train consultants in negotiation techniques.
Key work:
- Built classroom features supporting both large group classes and small breakout sessions
- Implemented a role-based training plan system to control module access by user type
- Added accessibility enhancements: screen reader support and user-customisable CSS themes
- Mentored a junior developer throughout the engagement
Angular Finance System — Inawisdom
Angular · NgRx · TypeScript · .NET APIs
Took over a complex finance application for a pharmaceutical client with no formal handover. The system functioned as a large rules-driven spreadsheet, backed by .NET APIs.
Key work:
- Delivered new features and resolved a backlog of prioritised client bug fixes
- Built a task assignment and workflow feature for user login flows
- Provided full handover documentation to the incoming maintenance team
Getting Started with Angular — Book
Angular · TypeScript
An 11-chapter guide to Angular published on Leanpub. Covers core concepts through to advanced topics including Observables, RxJs, NgRx state management, unit testing, and deploying to production.