I previously posted about how I discovered LaunchDarkly and wanted to introduce it at my current employer. See Part 1 here. Our pilot with LaunchDarkly went great. So great that we purchased a subscription.

The product will help give us fine grained control over who will see particular features: internal vs external users; particular clients; groups of users; a percentage of randomized users/clients (canary model), and so on. This has some very significant potential benefits, including:

Risk Mitigation

Gradually roll out new features and turn off poorly performing features instantly

  • Reducing risk for Production deployments. Features can be decoupled from the deployment itself. New features can be deployed to production turned off, then turned on for a group of testers before releasing the new feature into the wild.
  • Reducing the investment in UAT: because features can now be included in releases but enabled in production at different times, it allows for a less โ€œall-or-nothingโ€ approach to UAT, which extends the time-frame of launches as specific blocking features need to sometimes have multiple issues addressed.

Feature personalization

Reducing the IT investment in infrastructure

  • Beta features: rather than potentially having to support two parallel prod environments for beta/current parallel paths, all code can be deployed to a single prod environment, with feature switches used to determine visibility of beta features.
  • Blue/Green production environments: 2 production environments will not be necessary to reap the benefits of a blue/green setup.

Empowered Product Development and Shortening the feedback loop between customers & development

Allowing for the running of true beta cycles, whereby feature visibility can be simply managed in a dashboard by Product, rolled out to customers in a controlled fashion, requiring much less ongoing coding and deployment work for Development and Infrastructure to support multiple paths and release chains.