Does anyone know the best ways/practices to implement feature flagging (with kill switch, opt-in, incremental roll outs etc…) with Meteor? According to this LaunchDarkly page:
Feature flags give a software organization the power to reduce risk, iterate quicker, and get more control.
So today, we wanted to make some features (payment management, feature-testing) to be available to a subset of users geographically. I know companies like Facebook, Apple, Twitter and Uber have all implemented feature flagging into their own architectures at different layers. Though allowing users access a separate deployment (in beta) could do the trick, but it’s not really flexible. I am also wondering with the recent implementation of dynamic imports in Meteor and component nature of view layers, feature flagging should be easy.
Feature flagging is a method by which developers wrap a new feature in an if/then statement to gain more control over its release. By wrapping a feature with a flag, it’s possible to isolate its effect on the system and to turn that flag on or off independent from a deployment. This effectively separates feature rollout from code deployment. Feature flagging is a core component of continuous delivery that empowers software organizations to release quickly and reliably.
If you have done this in your app, I would like to know the different ways to achieve this. Was it done geographically at the network layer (using a CDN like Cloudflare etc.) or at the view layer?