Patterns & Anti-Patterns for Effective Feature Flagging • Edith Harbaugh • YOW! 2019

Explore effective feature flagging strategies, covering best practices, anti-patterns, and real-world examples to ensure controlled rollouts, testing, and ultimate success.

Key takeaways
  • Feature flags are a great way to stop the effects of bugs while fixing the issue.
  • Feature flags can be used for controlled rollouts, testing in production, and real-world feedback.
  • Use feature flags as a first-class object, rather than tacking them on as an afterthought.
  • Feature flags can be used to test different trading parameters, beta testing, and feature soft launching.
  • Use analytics to determine how many people are using a feature before deciding to sunset it.
  • Don’t use feature flags for catastrophic errors, as they can make things worse.
  • Test for ambiguity and conflicting flags, and consider using a kill switch to shut down feature flags if things go wrong.
  • Think about how you’re going to end a feature, and consider using feature flags to sunset a feature gradually.
  • Warn people when you’re about to turn off a feature, and consider using a warning period before deprecating a feature.
  • Consider using feature flags to block access to certain users or features.
  • Don’t be afraid to turn off a feature if it’s not working, and use analytics to determine if a feature is working or not.
  • Use feature flags to gradually roll out new features or updates to your users.