Nine live products, two developers, one support inbox. The trick isn't heroics, it's refusing to let the products drift apart.

One stack, nine skins

Every site runs on the same Umbraco base, the same deployment pipeline, the same auth. If a fix lands in one, it lands in all of them the next day.

  • Shared component library
  • One CI pipeline templated per site
  • A single on-call rota

The hardest part isn't the code. It's telling a client no when their idea would fork the platform.