Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Mastering migrations

Andriy
January 21, 2023

Mastering migrations

Andriy

January 21, 2023
Tweet

More Decks by Andriy

Other Decks in Programming

Transcript

  1. Andriy Frankevych Software Engineer @ Docebo Looking for a better

    profile picture @alsoknownasdrew on the interwebs
  2. Part 1: Why Are We Doing This? - 3 products

    - 1 dev team - 1 system - 1 bottleneck
  3. Part 1: Why Are We Doing This? - 3 products

    - 3 dev teams - 1 system - 1 bottleneck
  4. Part 2: What Are We Doing? - Giant spaghetti script

    - No tests - No one knows how it works
  5. Part 3: How Are We Doing This? - Run the

    tests - Refactor - Run the tests
  6. Part 3: How Are We Doing This? - Use Adapters

    - Use Contract Testing - Throw away Golden master
  7. Part 4: What's next? - Use Contract Testing to migrate

    frontend - Repeat for other services
  8. Thanks References: - Fred Brooks: The Mythical Man-Month - Eric

    Evans: Domain Driven Design - Eberhard Wolff: Microservices - Michael Feathers: Working Effectively with Legacy Code - Contract testing: stoplight.io | pact.io - Slides: https://speakerdeck.com/alsoknownasdrew/mastering-migrations