Best Practice
Implementation checklist
Before implementing Optimizely Feature Experimentation in a production environment, review the configuration details and best practices checklist to simplify implementation. The following diagrams demonstrate how you, your users, and Optimizely Feature Experimentation interact.
Event tracking
If you can install a Feature Experimentation SDK and identify a user, you can use Optimizely Feature Experimentation to track any event, from users interacting with specific elements of a web page or mobile app to more complex metrics like lifetime value that are calculated in backend systems. Tracking and measuring user behavior is a prerequisite for understanding how your customers use your product and why they use it that way.
IDE plug-ins
Optimizely provides IDE plugins to allow developers to manage and interact with Optimizely Feature Experimentation flags in code.
Microservices
If your stack is service-oriented or relies on microservices, you have two implementation options use Optimizely as a service or include the SDK in every service. For a centralized decision service, use Optimizely Agent , an open-source microservice that runs the Go SDK in a Docker container.
Multiple SDK implementations
In more complex codebases, a single customer interaction often involves multiple services and languages. For example, you may want to Use a server-side SDK to run an experiment on your backend, but track results with conversion events using one or more client-side SDKs (JavaScript, iOS, or Android).
Mutually exclusive experiments
Two- and three-stage testing
Fetch datafiles
In Optimizely Feature Experimentation, the datafile is a JSON payload that defines your experiments, feature flags, and their corresponding configurations. You must ensure that this file accurately reflects the current state of your feature rollout, but you need to manage the performance trade-offs carefully.