B2B SaaS product org (pattern case) · 2018 · cost index 4/5
The three-year frontend migration that shipped parity
Multi-year rewrite; feature freeze periods; hiring for frameworks users never asked about
What happened
The product UI migrated from Ember to AngularJS remnants to React "because hiring." Users got the same dashboards with new bugs during cutover. Engineering velocity flatlined while roadmap slides promised modernization. Parity became the only milestone that mattered — and it took years.
Failure mode
Treating framework churn as product work. Boundaries between domain logic and presentation were weak, so every migration was a rewrite. "We must rewrite to hire" beat "ship the feature sales already sold."
Lesson
Users rarely notice your bundler. Isolate domain logic, migrate incrementally, and demand ROI on framework tax. Fashion calendars and product calendars are not aligned — and that misalignment is someone else's business model.
Sources
- Industry pattern — multi-framework SPA migrations
- Engineering org retrospectives on rewrite ROI
- Framework churn cost surveys (anonymized)
Related tech
Framework · 2011–2020
Ember.js
Convention-over-configuration SPA framework. LinkedIn and Discourse kept the faith; everyone else went React.
Framework · 2010–2021
AngularJS (1.x)
Two-way binding magic that became a migration tax. Angular 2+ was a rewrite; the 1.x apps lingered for years.
Practice · 2014–2023
SPA for Every Page
Client-side apps as the only architecture. Great for apps; absurd for brochures.
$ Marketing sites and docs portals shipped multi-megabyte JS bundles for content that wanted HTML. SEO and performance teams spent years unwinding "modern" defaults.
Framework · 2013–now
React
Components and unidirectional data. Won the front-end by being good enough and having a gravitational ecosystem.
Framework · 2010–2016
Backbone.js
Minimal structure for early client MVC. Taught the browser to think in models before React rewrote the rules.
Framework · 2006–2018
jQuery
DOM peace treaty for a fractured browser world. Mission accomplished — then frameworks ate its job.