Are you ready to deploy your new feature or service into production and require some hardware to run your code? In other organizations I’ve worked at, you are at the beginning of a multi-month process.
At Flow, we have none of this. We run homogeneous microservices deployed straight to production. All developers are free to create a new service that meets their team's requirements, and are trusted to deploy to our cloud environment with no red tape or management approval. You are the engineer with the best knowledge of what is required to deliver business value!
Ok, you’ve deployed your new service to production at another organization and it is time for new features or a bug fix release.
Do you need to?
Again, at Flow we have none of these requirements. We build our software as small incremental features which are deployed straight to production once the CI build is green and the merge button pressed.
Yes, sometimes something goes wrong: a release may cause a regression, introduce a bug, or in the worst case, an outage. At Flow, we are willing to accept these risks for the advantages of reducing time-to-market.
Engineers are responsible for increasing their unit test coverage and only merging when green. When not sure about a change we can easily ask a colleague for a code review. If there is a failure, we embrace a blameless post mortem culture to identify the root cause and reduce the risk for next time.