Product development
Built marketplace, account-management, registration and refund features for live events products.
I build responsive applications, connect services and work close to production support. My background combines product development, operational debugging and finance-domain experience.

I build responsive web applications using React, Next.js, TypeScript and Tailwind CSS. Recent work spans customer-facing features, internal tools, parser fixes, support workflows, API integrations and cloud tasks.
Built marketplace, account-management, registration and refund features for live events products.
Worked with parser failures, production data checks, command-line tools, S3 workflows and internal support queues.
Previous accounting and financial management experience helps with data-heavy workflows and business rules.
Worked on products for the live events industry, including organiser tooling, customer marketplace flows, registration features and account management.
Supported a fintech platform using Vue/Nuxt, Node.js/Express and AWS Lambda to convert PDF bank statements into structured JSON and CSV data.
Built a small internal application for token invoice creation, authentication and accounting integration.
I have worked across front-end product features, Node/Express APIs, Firebase-backed applications, AWS services and support tooling for live systems.
Responsive interfaces, forms, dashboards and product flows.
APIs, integrations, scripts and production data tasks.
Deployment and operational support for web applications.
Production marketplace rebuild
Responsive ticketing marketplace built with Next.js, Tailwind CSS, shadcn/ui and Firebase. The project replaced a mobile-only customer journey with a web experience that works across devices.
Event organiser workflow
Feature allowing organisers to collect attendee details and custom question responses before approving customers to purchase tickets.
Freelance integration build
Internal web app for authenticated employees to create token invoices and send them to Xero through the Xero API.