Migrating Your Most Critical Feature Without Regressions or Downtime
summary
A small team needed to stabilize and migrate a web app’s most critical feature without downtime or regressions by avoiding a full rewrite. The talk explains a step-by-step approach using SQL transactions, metrics collection, automated tests, feature flags, double-run (parallel execution), and Domain-Driven Design to incrementally reduce technical debt (business logic in the frontend, overloaded CRUD API, database deadlocks) while improving stability and performance.
AI-written summary · about
chapters (15)
- 0:00Introduction
- 1:06Critical context
- 9:24Initial architecture
- 13:30High error rates
- 17:31Migration design
- 19:41Monitoring setup
- 21:57Domain-oriented API
- 24:29Incremental problem split
- 28:10Production validation
- 31:02Testing and dual run
- 33:12Progressive deployment
- 36:46Results and minor incidents
- 37:34Key lessons
- 41:19Two-year review
- 42:03Q&A
related talks
35mDatabase migrations without downtime
41mSurviving Continuous Deployment in Distributed Systems
34mZero Downtime Database Migrations and Deployments
30mWhy most technology migrations fail (and what we've learned along the way)
23mDevOps and Legacy Code
51mMigrations - The Hardest Actual Problem in Computer Science
38mA How-to guide for migrating legacy data applications
01h 00mLet's Get Scary and Continuously Deploy Database Changes!
