I'm the dev
your last dev
couldn't be.
What I build
Three things, done well.
E-commerce storefronts
B2C storefronts on MedusaJS with custom checkout flows, Mollie payments, and ZeptoMail for transactional emails, with Supabase and Redis powering data and caching.
Content & marketing sites
Performance-tuned Next.js sites with Sanity CMS. Lighthouse-optimized, accessible, and easy to update without breaking things.
HubSpot portals & CRM integrations
Multi-role portals with per-role dashboards and role-based access. HubSpot CRM integrations for lead assignment, deal sync, and workflow automation. Also internal tools — SSL trackers, AI assistants, admin dashboards.
Recent outcomes
Selected work.
Multi-role portal with HubSpot CRM integration
Built for a US building products manufacturer: contractors manage homeowner leads and submit quotes, distributors get scoped access, and HubSpot stays in sync with portal activity via API workflows for lead assignment and deal updates.
Automated SSL tracking for 500+ client websites
Tracked expiration across 500+ client sites with automated renewal reminders and task assignments. Replaced the spreadsheet the client care team used to chase manually.
AI content & code assistant used across teams
Co-built with Laravel, React, DynamoDB, and OpenAI. Used internally for writing, proofreading, email drafting, and debugging code.
Side projects
Built out of curiosity.
Strava Webhook
Cloudflare Worker that listens for new Strava activities and triggers a deploy to AWS EC2 via GitHub Actions, keeping this portfolio's activity data fresh.
This portfolio
Statically exported Next.js site with GitHub and Strava API integrations. Blog posts are markdown with custom syntax highlighting.
Boardgameplay
Real-time multiplayer board game platform built during my internship. Built solo using Next.js with Firebase for realtime sync.
Tech Feed
Article-sharing platform with auth and news aggregation via NewsData.io. Deployed through GitHub Actions CI/CD.
Worked with
Where I've shipped code.



Off the keyboard