Feature flags are a way for us to enable or disable code paths without needing to re-deploy software. In a world without feature flags, you might develop a new feature on a branch, and then when you merge it into main, the next time you deploy the feature goes out. This feature goes out on the release (so you want to time your deploy based on some marketing strategy), and on top of this the release goes out and immediately causes problems. You have to rollback (also rolling back some bugfixes...