Feature Flags
Recommendation
Updated
Moved
USE
2023-03-22
What is it
It is a technique to allow a team to modify system behaviour without changing code. A naive implementation could like this:
if (isFeatureAToggled) {
enableFeatureA()
}
Why we use it
Einride is currently not utilizing feature flagging in Saga. However, it is something that should be used and assessment of libraries/tooling to help implementation is encouraged.
When to use it
It should be used to release new features in a controlled manner, toggle functionality for specific users and for experimental features (A/B testing).
How to learn it
Read a blog post on Feature Toggles by Martin Fowler to understand the theory behind them.