Work / Vue Mastery, 2021 to present
Keeping the Vue ecosystem’s classroom running
Cloud Functions, storage hardening, content migrations and campaign launches for the platform that teaches Vue.js.
Context
Vue Mastery is the video-course platform run by Vue.js core team members and instructors. It is a Nuxt 2 application on Firebase, with Flamelink as the CMS and Chargebee for subscriptions, maintained by a very small team. I joined in September 2021 as the engineer for the platform and its campaigns, full-time through the end of that year and on a part-time retainer since.
What I built
The first month was infrastructure; after that, whatever the platform needed.
- A signed-URL download service as a Firebase Cloud Function, gated by subscription state and allowing free-tagged courses through, with the IAM roles and CORS scoped to exactly what it needed.
- Storage hardening: the bucket went from public read and write to authenticated read-only.
- The migration of 207 lesson videos from Vimeo into Cloud Storage, with Flamelink schema changes to track upload state, and a production run that optimised 4,724 user profile images.
- An IP-to-location function so visitors in countries where Vimeo is blocked see a banner explaining why a video will not play.
- The Chargebee cancel-subscription function, GA4 and Google Ads conversion tracking through Google Tag Manager, MailerLite reconciliation cron jobs, and GDPR compliance.
- Every Black Friday, Holiday and Free Weekend campaign since 2021: landing pages, banners, coupon flows, countdowns and pricing changes, reviewed on staging with the founders and shipped on the day.
- CircleCI deployments for staging and production, including recovering from a maxed-out deployment limit and a service-key incident.
Outcome
Downloads, storage and billing stopped generating support tickets. The retainer has run for five years. Along the way I contributed documentation and pull requests to the Vue.js and Pinia ecosystems.