What are feature flags? Features flags (aka feature bits,
feature toggles) are a very useful technique for managing latent
functionality within your application. You expose switches in
your application which configure whether certain behavior is
enabled or disabled. Typically your would use this pattern for
functionality which is under active development and is not
‘fully baked’. There are various classes of behavior which you
might expose toggles for. Common use cases include hiding user-
facing features which are still in development, or switching
whether your code uses a new version of a third-party service.
This allows you to do branch-by-abstraction and therefore avoid
long-lived feature branches which can often be the source of
considerable pain to a development team. For a more in-depth
discussion on this pattern, Martin Fowler has a nice writeup. My
former colleague Erik Sowa also has a nice presentation
describing how we applied ‘feature bits’ at a previous company I
worked in. Derek Hammer has a real