This article is an excerpt from Migrations Done Well: a guide for executing migrations well, at both small and large scales, published in The Pragmati

Migrations Done Well: Typical Migration Approaches

submited by
Style Pass
2024-05-05 13:30:03

This article is an excerpt from Migrations Done Well: a guide for executing migrations well, at both small and large scales, published in The Pragmatic Engineer. To get deep dives in your inbox like this issue, sign up here.

Migrations are one of the most overlooked topics in software engineering, especially at high-growth startups and companies. As a company’s operations grow, new systems and approaches are adopted to cope with extra load, more use cases, or more constraints. From time to time, engineers need to migrate over from an old system or approach, to a new one.

In 2012, PayPal announced it would take all of its global payments processing systems down for an hour, within a three-hour window. This was to be while it moved over to a new infrastructure. It was decided that taking the system down, moving data over to the new infrastructure and then spinning it up, was the safest way to go.

Even though the scheduled time was at night in the US, this migration caused losses thanks to transactions by global customers not being processed during this time. However, the migration did complete as planned, while the disruption and losses to the business were within the realm of what PayPal had planned for.

Leave a Comment