Even the best software development teams I work with struggle to solve the problem of _completely automated deployment_s to their production environments. The biggest hurdles to this tend to take the form of:
There are several strategies we can apply to solve those points individually, but one simple trick to solving all these issues with one pattern is to apply Feature Flags to your code.
It does not matter if you are developing on an older monolithic application or a greenfield microservices architecture application; you can introduce feature flagging into either pattern. In addition, with the industry standard of agile development, it can be near impossible to code an entire net new feature in a single sprint. Using feature flags, we can simply default our new code to “off" and regardless of who asks for what during our sprint, we can package our app and deploy it without worrying about something breaking.
Yes, you’ve read that right. I am advocating you use feature flags to test in prod! Alright, well, hold on — before you start getting crazy thoughts and think I’ve lost my mind, let me clarify.
There are a few areas where we can use feature flags and turn things on in production without causing a major impact to our end-users:
#software-development #feature-flags #javascript #startup #programming