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

Mastering migrations

Avatar for Andriy Andriy
January 21, 2023

Mastering migrations

Avatar for Andriy

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