Introduction
For over twenty years I have specialised in building user-centric interfaces, for fast-paced startups and for large-scale financial institutions. I architect front-end systems and component libraries, and I care most about the people who have to build on top of them. I currently own every user-facing surface at GYRO, an independent music distributor. Outside that I design and ship my own products: numbered resin model kits, a developer tool, and a native Mac audio client.
JavaScript / TypeScript
HTML / CSS
UI Design / UX
React / Next.js
Experience Summary
Lead Front-end Developer
Jul 2025 - Current
GYRO
GYRO is an independent, Australian-owned music distribution platform that places artists on over 100 streaming services while they keep 92% of their royalties. I own every user-facing surface: the customer dashboard, the admin dashboard, and the marketing work around them.
- Own every user-facing interface across the platform.
- Build the customer dashboard artists use to manage releases, royalties and streaming analytics.
- Build the admin dashboard the team uses to operate the distribution platform.
- Produce marketing assets and site work alongside the product surfaces.
Lead Front-end Developer
Dec 2023 - Jun 2025
Presper Labs
In my role at Presper Labs, I am responsible for the practical development of new technologies and software for our clients. I lead the front-end development lifecycle, from the initial prototype to the final product.
- Lead the front-end architecture and development for new software prototypes.
- Collaborate with clients to build custom software solutions to meet their needs.
- Apply modern front-end technologies to build scalable and reliable applications.
- Develop core front-end technologies that serve as the foundation for client products.
Lead Front-end Developer
June 2022 - Nov 2023
OSQO
As a founding team member at this financial services technology startup, my work involved building and leading all front-end development initiatives from the ground up.
- Built a scalable front-end architecture using React and TypeScript.
- Automated the front-end infrastructure to improve development efficiency.
- Led the development and ongoing upkeep of all front-end applications and assets.
- Managed the integration of the Intercom CRM system into the platform.
Lead Front-end Developer
Oct 2020 - May 2022
Bookwell
As the Lead Front-end Developer for this online beauty and wellness booking platform, I led a complete refresh of the user interface and underlying design systems.
- Led a comprehensive design overhaul for existing Bookwell applications.
- Established a new Design System to improve UI/UX consistency and streamline development.
- Implemented front-end designs using React/NextJS and Elixir/Phoenix.
- Prioritised SEO and a performant user experience in all development work.
Lead Front-end Developer
Apr 2019 - Oct 2020
Mogul
My role involved leading the creation of a global online E-Sports tournament platform using Vue.js.
- Developed online E-sports tournament platform with a focus on rapid creation and deployment.
- Built a comprehensive component library to streamline future development efforts.
- Coordinated a geographically dispersed team of developers to ensure effective collaboration.
Lead Software Engineer (Contract)
Sep 2018 - Apr 2019
Culture Amp
As a Lead Front-end Developer for this employee management and experience platform, I focused on expanding the product's global reach through extensive localisation efforts.
- Led the localisation project for the company's staff management tool.
- Implemented Right-to-Left (RTL) localisation to support Arabic translations
- Integrated new translation strings across all sections of the platform.
- Coordinated with the translation team to ensure content accuracy.
- Mentored and provided guidance to junior developers in the team.
Selected Work
Product
Mini Mecha
Numbered, finite resin garage kits. Operators vote concepts into production, reserve numbered blocks from a live drop, and post their finished builds. I designed the product, built the platform, and run it.
Developer tool
InSitue
Click an element in a running web app to file a change request, and an agent opens a verified draft pull request against the exact source line. Open-source SDK and editor plugin, paid cloud service on top.
Mac app
EKO
A native Mac client for self-hosted music. The signal path is bit-perfect where it can be, and the interface says so. The moment volume, EQ or sample rate breaks that, the seal downgrades itself rather than keep the claim.
Game
Groove Unit
A desk companion that dances in time to whatever you are actually playing, using onset detection over system audio. Godot and Rust, with the DSP written by hand rather than pulled from a library.
Library
Recast
An approach to building genuinely reusable React primitives by lifting the theme layer out of a component's internals. Build the component once, skin it per project.
Online Presence
CodePen
