Zero-downtime migration from Acoustic to Braze
Every department's newsletters and sign-up forms depended on Acoustic: about 1.4 million contacts across 8 master databases (1,400,505 in total). Instead of a risky big-bang switch, I built a routing layer so lists could move one at a time.
- Per-list routing microservice: each list goes to Acoustic, Braze, or both, with instant rollback and no front-end redeploys.
- Rebuilt the public unsubscribe / preference center on top of it.
- CSV import converter that validates department exports against an approved attribute registry and identity graph before writing via the Braze REST API.




























