do you need a “platform” for feature flags? if you have so many feature flags that you need complex management i think that indicates you need configuration/settings management.
do you need a “platform” for feature flags? if you have so many feature flags that you need complex management i think that indicates you need configuration/settings management.
Coupled to a code deploy or not.
Changing flags on deploy is simple, great when you have a fast pipeline and only a few flags.
But at some point it becomes useful to decouple feature release from code deploy.
And the only way to do that, is to be able to change the value of a flag out-of-band of a pipeline.
Then you have the capability to test new code in environments before prod and in small parts of prod—canary releases and so on.
Configuration and settings management overlaps with feature flags, but note that often the value comes from the ability to test and safely deploy new code into production environments (more of a release flag), that to enable a feature for a specific user. It just so happens that the use cases and technical implementations overlap so frequently it’s sometimes less work to use the same system.
It's helpful if you have non-devs on the team who nonetheless want to toggle flags. Sometimes UX people use them for A/B testing, for example. Or a manager might want to see how a certain experiment performs and then turn it off if it's not doing well.
The "platform" is really just an easy web GUI with roles & permissions. In the past I've used Unleash, VWO, some Google thing that was sunsetted (of course), maybe some others. They're simple SaaSes but useful in the right teams.
I agree, it's not clear to me how a "platform" for this would improve anything.
Sure developers need to be involved in setting up SDKs, and making it possible for flags to be used. But oftentimes the people setting the flags and phased rollouts of features: "4% of users in France, then next week 10% of users in France and Germany, and then 50% of all European players need feature XX".
Platforms might be a hard sell, but many many mobile-application developers end up reinventing these kinda things over time, especially the popular ones.
Now, could you have real-time config management that doesn't require a re-deploy/reboot of the app? Sure, but the typical 12-factor app can't really avail itself of that without significant rework.