BIIAB Training Management Platform
Multi-tenant training platform that replaced spreadsheet booking and payment workflows for UK education providers. Built with Remix, Prisma, PostgreSQL, and Stripe.
I’ve spent the last 5+ years building and shipping websites and digital products in agency and startup environments, after 10 years working in the nonprofit world. That background still shapes how I think about communication, users, and meaningful problem solving.
I've spent the last 5+ years building and shipping websites and digital products in agency and startup environments. Prior to that I spent 10 years working in the nonprofit world. That background still shapes how I think about communication, users, and building meaningful products.
The problems I care about go beyond code. Sure, I love to spend all day coding, but in my experience the real challenge is addressing the bottlenecks that come from all the people involved with the product.
I love working at the intersection of technology, problem-solving, and user experience. I'm always exploring new frameworks and tools, not because trends matter, but because better tools can lead to better products when used thoughtfully.
I'm constantly testing new frameworks, CMS solutions, and development tools so I can stay aware of the best options for different types of projects. That gives me a flexible toolbox and helps me choose the right approach based on the needs of the product, not just personal preference. Whether it's a lightweight build using vanilla CSS and JavaScript or a complex SPA with AI integrations, I'm comfortable building across the full spectrum of modern web products.
I'm also leaning more and more into AI-assisted workflows to build faster, improve QA and testing, and get products into the hands of clients and users earlier. That helps create a stronger feedback loop and leads to more refined, more effective products.
The common thread in all of my work is this: understand the problem, choose the right tools, and build something that truly works for the people using it.
Explore the work, the decisions behind it, and what actually shipped.
Multi-tenant training platform that replaced spreadsheet booking and payment workflows for UK education providers. Built with Remix, Prisma, PostgreSQL, and Stripe.
Maintenance and infrastructure work on a React and Flask public service app tied to Interior Health data. I handled the Railway migration, backup automation, and data deletion endpoints.
Time tracking and invoicing for freelancers. Start a timer with one tap, then turn unbilled hours into numbered invoices. I'm building it on my own: accounts, multi-tenant data, PDF invoices, and email delivery. Free to sign up while it's in beta.
I've shipped work for healthcare, nonprofits, conferences, and startups. Check out the full list.
Before software I worked in international development and fundraising. That taught me how to deal with stakeholders, shifting requirements, and writing that people outside the codebase can follow.
Education
Web Development Diploma
2021 • Remote
BA, International Development
2009 - 2014 • Calgary, AB
2025 — Present
Web Developer & Consultant
Vancouver, BC
2026 — Present
Founder & Developer
Vancouver, BC
Mar 2023 — Present
Web Developer
Vancouver, BC
2021 – 2022
Front End Developer
Remote
2015 – 2020
Program Manager / Development Officer
Calgary, AB
The core of my work is React-based frontend systems, content architecture, backend data workflows, and the quality work that gets projects safely to launch. I pick the stack to fit the product, then I ship it.
Frontend
React • TypeScript • Next.js • Remix / React Router • Astro
Content Systems
Sanity CMS • Headless WordPress • WPGraphQL • Faust.js • ACF Flexible Content
Backend & Data
PostgreSQL / SQL • Prisma • Drizzle • GraphQL • Supabase
Quality & Delivery
Cypress • Mock Service Worker • Jest • Selenium • Technical Documentation