Skip to content
harryy.me
Intern → Engineering Lead · 2015 to 2021

Appointy

Built Saastack, a 232-package SaaS engine for 1M+ users that Google and Telefónica ran on.

www.appointy.com ↗
Load Time
15s→<1s
Tenure
6 yrs
Packages
232
Users
1M+
Languages
19
Engineers led
8
Appointy public homepage screenshot
Public homepage captured from appointy.com.

01 · The problem

Every new SaaS product at Appointy required rebuilding foundational features from scratch: authentication, billing, scheduling, and staff management. This led to inconsistent implementations, duplicated effort, and slow delivery cycles. The existing scheduling platform serving 1M+ users had load times of 15 seconds.

02 · How I built it

  1. ABuilt Saastack: a modular, plug-and-play SaaS framework with 232 packages. Hook-based plugin architecture enabling runtime extensibility without redeployment.
  2. BRelay/GraphQL data layer replacing REST, providing type-safe queries and build-time contract validation. CLI scaffolding tool for standardized app creation.
  3. Ci18n library and prebuilt component system supporting 19 language options, multi-currency, and regional formats as first-class product concerns.
  4. DCaching redesign at the platform level for sub-second load times.

03 · Trade-offs

  • Hook-based architecture over static registration: runtime extensibility without redeployment. Critical for white-label deployments (Google, Telefonica) needing different feature combinations.
  • Relay/GraphQL over REST: each product queries exactly what it needs from shared resolvers. Relay compiler catches data mismatches at build time.
  • Code generation over handwritten glue: annotation-driven generation eliminates boilerplate across 232 packages.
  • Built-in i18n as platform citizen: language, currency, and regional formatting as deployment-time configuration rather than repeated product work.

04 · What shipped

  • Load times reduced from 15s to under 1s
  • 232 packages in a modular, reusable architecture
  • Platform reused for Google and Telefonica engagements
  • 1M+ users served
  • 19 language options supported
  • 8-engineer team managed with established coding guidelines