BEGIN:VCALENDAR
VERSION:2.0
PRODID:-//pretalx//talks.devopsdays.org//devopsdays-portland-2026//talk//G
 DDBWE
BEGIN:VTIMEZONE
TZID:US/Pacific
BEGIN:DAYLIGHT
DTSTART:20250909T000000
TZNAME:PDT
TZOFFSETFROM:-0700
TZOFFSETTO:-0700
END:DAYLIGHT
BEGIN:STANDARD
DTSTART:20251102T020000
RDATE:20261101T020000
TZNAME:PST
TZOFFSETFROM:-0700
TZOFFSETTO:-0800
END:STANDARD
BEGIN:DAYLIGHT
DTSTART:20260308T030000
RDATE:20270314T030000
TZNAME:PDT
TZOFFSETFROM:-0800
TZOFFSETTO:-0700
END:DAYLIGHT
END:VTIMEZONE
BEGIN:VEVENT
SUMMARY:Swapping the Engine Mid-Flight: Migrating a Live Decision System w
 ith Zero Behavior Change - Ankit Agarwal
DTSTART;TZID=US/Pacific:20260909T112000
DTEND;TZID=US/Pacific:20260909T115000
DTSTAMP:20260824T035736Z
UID:pretalx-devopsdays-portland-2026-GDDBWE@talks.devopsdays.org
DESCRIPTION:We replaced the engine behind a high-traffic\, real-time decis
 ion system - while it kept running\, with no user-visible change. This is 
 the honest story of de-risking a high-stakes migration from a legacy rule 
 engine to a new platform\, and the techniques that made it survivable.\nI'
 ll walk through what actually worked: shadow/replay testing that ran old a
 nd new side-by-side on real traffic and diffed every response\; a switchab
 le flow that let us flip and instantly un-flip the traffic without a code 
 change or deployment\; automated configuration-drift detection between the
  two systems\; and a staged rollout where rollback was a designed feature\
 , not a panic button. You'll hear the decisions and tradeoffs behind each 
 choice\, the bugs that equivalence testing caught but code review missed\,
  and the things we still got wrong.\nIf you're staring down a scary migrat
 ion of something that can't go down\, you'll leave with a concrete\, reusa
 ble playbook and a more honest sense of what "zero downtime" really costs.
LOCATION:Ballroom
URL:https://talks.devopsdays.org/devopsdays-portland-2026/talk/GDDBWE/
END:VEVENT
END:VCALENDAR
