flow              the first way

  • self-service environments
  • single repository of truth
  • cattle not pets
  • only done when running in production
fast & reliable automated testing
  • continuous build test & integrate
  • automated validation test suite
  • catch errors early
  • write tests before writing code
  • run tests quickly, in parallel
  • automate manual tests
  • integrate performance tests
  • integrate non-functional requirements testing
  • pull the andon cord when tests fail
continuous integration
  • adopt trunk-based development practices
  • definition of done :  at the end of each development cycle we must have integrated, tested, and potentially shippable code, demonstrated in a production-like environment, created from trunk using a one-click process and validated with automated tests
automate & enable low-risk releases
  • automate deployment process
  • enable automated self-service deployments
  • integrate deployments into the pipeline
  • decouple deployments from releases
architect for low-risk releases
  • monolith vs microservices
  • strangler application pattern to evolve architecture