Founded in 2014, LaunchDarkly is a Feature Management Platform that helps engineers use feature flags to build better products, faster. The ability to turn flags off without deploying allows users the ability to “launch darkly”.
We had the opportunity to speak with Engineering Manager Lexi Ross to learn about how LaunchDarkly uses Courier’s notifications to deliver software with speed, security, and coordination and why Courier was the best option to implement them.
Automations and Notifications
So why does LaunchDarkly’s engineering team care about notifications? Because they are necessary to retain customers and encourage future product adoption. The team in particular that is working with Courier owns Feature Workflows. Feature Workflows are customizable end to end flows by which customers can automate their flag releases. Engineers can use Feature Workflows to schedule and request approval for flag changes, plus more.
One of the greatest values provided by Feature Workflows is the ability it gives product teams to automate complex workflows around feature releases. These workflows include use cases such as scheduling releases for a future date, requiring an approval workflow before a release goes live, and changing feature flags based on triggers from external systems.
While all of these use cases allow LaunchDarkly customers to do more with the platform, it makes coordination and communication essential to success. If the proper user didn’t know their approval was needed, or the team wasn’t aware that a new release had been triggered, then confusion and loss of productivity could follow.
A reliable, multi-channel notifications system that could provide a high quality user experience was essential for Feature Workflows’ success. Once the team understood this, it was time to find the best notification solution for their needs.
- Routing Engine
- Rendering Engine
Ready to get started?
There were three main reasons for LaunchDarkly to consider using Courier. For one, their existing solution needed to be replaced as the need for certain functionality increased as well as security concerns. Second, there was a need for additional features and channels for notifications as the product and company scaled and their customers expected more speed and efficiency that existing solutions did not provide. And lastly, Courier fit seamlessly into LaunchDarkly’s existing technology and tool stack.
The engineers at LaunchDarkly had been using Sendwithus for transactional email services and knew they needed to switch off of it sooner rather than later. There was some concern that the tool would be sunset eventually, and this added some urgency to the situation. They also needed a tool that was GDPR and SOC2 compliant in order to provide their customers with a reliable and secure service, which is an important promise they make to their customers. LaunchDarkly is in the critical infrastructure path for a lot of their customers, so it was particularly important to make sure all the tools they were using would be up to the necessary security standards.
As LaunchDarkly scaled, they knew that they also needed to add certain features and channels to continuously make the product more sophisticated. Many of their customers, for example, used Slack and Microsoft teams and Courier’s existing integrations with both teams made it easier to reach both sets of users. It also needed to be possible for the company’s support teams to be able to debug any email issues, which required them to be able to access and review logs.
It also helped that Courier fit so well into LaunchDarkly’s existing suite of tools. The engineers wanted to use a Go SDK, for example. As a team that builds many SDKs themselves, it was important for them to be able to allow their customers to integrate directly into their stack. Because they already used Mailbin under the hood to send emails, the team was also looking for a solution that would let them continue to work with Mailbin as a provider.
The Road to Success
Integrating Courier with LaunchDarkly’s existing suite was particularly easy, and in some ways, interesting as well. For example, LaunchDarkly’s engineers recently implemented Slack notifications specifically for the approvals use case. The team requires approvals for changes to their own LaunchDarkly production environment, which acted as encouragement to use Slack notifications. Since users are often using Slack all day and ubiquitously, it would make for a better user experience to be able to handle approvals directly within the tool.
In order to make use of LaunchDarkly’s existing Slack integration, the engineers used the Courier webhooks channel instead of the Courier Slack channel. This worked well because they had an existing way to send webhooks to their own Slack integration. So now any time they want to send an approval notification to Slack, they use the webhook channel to send to the designated customer through any Slack instances with LaunchDarkly installed.
Adding Slack as a channel definitively reduced approval time internally at LaunchDarkly and feedback from developers has also been positive. Most importantly, however, additional channels like Slack increased LaunchDarkly’s customers’ ability to operate a coordinated workflow, which is another important promise the company makes to its users.
Overall, the folks at LaunchDarkly found that Courier was the best option for multi-channel use cases and product notifications in particular. Courier was able to facilitate LaunchDarkly’s ability to provide their customers with speed, security and coordination through Automations, security compliance, and multi-channel communications for flags. It was also an ideal tool to use for a product with a developer audience, as Courier itself was built for developers.
Originally published at https://www.courier.com.