- Feature management will soon be available in Optimizely X Full Stack
- Implement feature flags for safe launches, gradually roll out new features, and experiment and iterate on the fly with variables
- Simplify product development by unifying experimentation and feature management in Optimizely, so you can minimize risk and prove impact
As a product development team, launch day is often met with excitement and stress. You’ve spent weeks, months or even years designing, building and polishing a new feature or customer experience. How will your customers or users respond? Will you see the improvement in conversion rate, load time, engagement, or churn reduction that you expect? Engineers may be holding their breath and hoping that the launch doesn’t overload server capacity, or that a critical bug doesn’t sink the team’s success.
At Optimizely, over the past few years we’ve seen that product teams have turned to experimentation as a way to validate ideas prior to launching new products, features, and experiences to everyone. At the same time, forward-thinking engineering teams have begun adopting continuous integration and continuous delivery practices to enable faster development cycles, and feature management practices like flags or toggles to mitigate the risk of launching an unproven new feature or experience to every customer at the same time.
This is how the top software companies in the world—Amazon, Facebook, Google, Netflix—develop the digital products that make up their core customer experience. They A/B test to find the best experience possible, then use feature flags to control the rollout of that new experience to their entire customer base.
We recognize that it’s essential that experimentation and feature management work hand-in-hand. That’s why we’re excited to share that soon Optimizely X Full Stack will enable product and engineering teams to go beyond experimentation and control the roll out of new features with three new capabilities for Feature Management: Feature Flags, Feature Rollouts, and Feature Variables.
Simplify product development with Feature Management
Feature Flags, Rollouts, and Variables integrated with experimentation enable you to control the entire product development lifecycle with one command center in Optimizely. By first running an A/B test to a small segment of traffic, your team can determine the best version of a new feature, or measure whether the improvement you’re making is truly an improvement. Once you know which experience is best, it can be rolled out in a controlled way across your entire customer base to monitor impact and reduce the risk of encountering any engineering issues. Using Feature Flags, Rollouts, and Experiments, this entire process can be controlled without deploying any new code.
Today, most teams either build their own feature flag (or feature toggle, feature gate, release toggle, feature bit) system or don’t do anything to control risk when making product updates. Internally-built systems can lead to quickly escalating tech debt and complexity, as more teams across the company use flags to test and roll out new features. Not having a system in place causes delays, as engineers must convert experiment winners into permanent code and deploy new releases to roll out, roll back, fix bugs, or make any updates to features.
A control panel for your product: Coming soon to Full Stack
Feature Management in Optimizely consists of several new capabilities:
A Feature Flag is a rule to enable, disable, hide, or roll out a product feature at runtime. A feature flag enables anyone—developer, product manager, or analyst—to configure the behavior of a product or feature on the fly without deploying code.
In the example here, we’re building a new feature to make the in-product search bar sticky, so that it follows the user down a page. By deploying the sticky search bar behind a flag, the team can then use a Rollout turn it on in production only for internal users, to ensure that everything works before starting an experiment. Once the team is ready to turn on the feature, they can add the flag to an experiment, and determine whether the sticky search bar improves user engagement or increases the number of searches.
Rollouts are a new way to launch features or experiment winners in Optimizely. With Rollouts, you can ramp up access to any feature or experience slowly, to monitor key engineering metrics like performance or bugs, or key performance indicators. Unlike experiments, Rollouts do not have variations, do not have metrics attached, and do not send events to Optimizely.
With Variables, you can instrument features with configurable components or parameters that enable anyone on your team to control or update the feature on the fly, without deploying code. Here we’ve added parameters to the search bar, like the length of the bar, the button copy, and placement on the page. The values in these variables can be changed without deploying new code, and can be used for running experiments on elements within your feature. You might instrument tuning parameters in an algorithm with variables, then use experiments to determine the optimal values for each parameter.
All of these improvements will together provide you with a control panel for your product in Optimizely: one dashboard with configurable knobs and dials for safely updating, measuring, and improving the user experience.
Feature Rollouts are currently in beta, and coming soon to Optimizely X Full Stack. Please contact your customer success manager for more information on getting access.