← Back to Journey Map Phase 07 · Execution & Delivery
Phase 07 · Execution & Delivery
Feature Flags / Toggles
Deploy code to production without exposing it to users
Continuous delivery / DevOps community · 2000s

Feature flags are configuration switches that allow code to be deployed to production while remaining invisible or inactive for users. They decouple deployment from release, enabling gradual rollouts, A/B tests, and instant kill switches.


Any team doing continuous delivery. Essential for trunk-based development, gradual feature rollouts, and safely testing features in production.


  1. Wrap new feature code in a flag check: if (featureEnabled('new_feature')) { ... }
  2. Deploy to production with flag OFF — code is live but inactive
  3. Enable for internal team first to catch obvious issues
  4. Enable for a beta user group or specific pilot accounts
  5. Enable for all users once validated
  6. Remove the flag from code after full rollout — accumulated flags become technical debt

🎵 Spotify

Spotify ships dozens of A/B experiments simultaneously using feature flags. Each variant is a flag — some users see version A, others see B, neither knows. The Discover Weekly rollout began as a flag enabled for 1% of users, scaled to 10%, then 100% over 3 weeks as the team confirmed infrastructure could handle the load.

📊 Trade Surveillance

Please contact the author for more information on these examples at linkedin.com/in/kshitijrege



Continuous delivery / DevOps community 2000s


← Return to Product Journey Map