Yonni Mendes
Published Dec 23, 2015
Just another day. We deployed another new feature here at Behalf.com. This new feature hasn't been tested yet. It doesn't even have proper automation ready to prove its different workflows. In fact, the only person to see it work is the developer - and he's the new guy.
Being team leader for the frontend team, I'm naturally concerned. Concerned that this new interface isn't quite as awesome as it could have been, given more time. My developers and I have already moved on to the next feature on our list.
We've achieved this degree of separation by adopting Dark Launch practices based on LaunchDarkly, a brand new and unique service that provides a great user interface for managing all our feature toggles. We spotted the value of LaunchDarkly early on and it allows us to slowly roll out new features by exposing them to only some of our users.
I'm happy to say that our experience with LaunchDarkly, and their San Francisco based team was excellent. Integration was super simple and even when we encountered difficulties, the LaunchDarkly team responded quickly and gave us effective assistance. Now our product team can focus on their plans and clients instead of dogging the engineering team about deadlines.
At Behalf.com we now practice Dark Launch deployment as a matter of course. At any given moment, our website has around eight different features which are deployed on production but are only partially done. Our users are not even aware that anything has changed. These features are all safely hidden behind feature toggles.
By giving limited exposure to a few users, we gain fast, immediate feedback about new features which are still in development and are able to quickly adapt the development to new insight gained in the wild. When trouble rears its head and a quick retreat from a change is needed we just turn off the feature and the problem goes away. A risk free deployment plan with a built-in exit strategy. Perfect.
Right now, we are looking for ways to integrate LaunchDarkly even more deeply within our Continuous Delivery systems. We’d like our testing platform to be able to activate features automatically, enable our sales department to leverage our unreleased features in their engagements and so much more.
I'm very excited we've reached the point in the evolution of Behalf's development process where this is possible. The sky is no longer the limit... It’s looking more like a challenge!