Part 1 made the case for Content Variations. This is the follow-up: wiring them to Feature Experimentation, proving the 33/33/34 split actually holds, and serving the same experiment from an MVC head and a headless Next.js head with zero coordination code.
Notes from the architect's bench.
Real-world write-ups on shipping Optimizely DXP, headless CMS, Azure infrastructure, and pragmatic .NET engineering. No fluff - just what worked, what broke, and what I'd do differently.
latest writing
Notes on the CMS 13 feature that didn't get the keynote, but probably should have plus where the sharp edges are and how we wrapped them.
Field notes from a live CMS 12 to CMS 13 and .NET 10 upgrade: the ecosystem is moving fast, with key add-ons already shipped and most blockers now in active upgrade branches.
Dozens of projects, clean build, green tests. The real work wasn't the framework jump—it was the dependency graph. Lessons on old hacks, transitive dependencies, and why 'new' isn't always the goal.
Honest notes from the field: the platform is solid, but migration complexity lives in the ecosystem, not the core. Database collation, legacy validators, third-party packages—the real work.
Major rollout for Digital Experience Platform complete. Product navigation working harder, documentation downloads up, dealer traffic growing.
Successfully migrated from legacy Windows to Optimizely DXP Cloud-native Linux. Cross-platform compatibility, WAF rules, and Infrastructure as Code.
A full migration of a large multi-brand estate off a legacy CMS onto headless Optimizely, GraphQL and Next.js on Azure - with Front Door routing brands across incrementally instead of a big-bang switch.