A lot of development teams have built out fully automated CI/CD pipelines to deliver code to production fast! Then you quickly discover that the new bottleneck in delivering features is their existence in longlived feature branches and no true CI is actually happening. This problem compounds as you start spinning up microservices and building features across your multirepo architecture and coordinating some ultrafancy release schedule so it all deploys together. Feature flags provide you the mechanism to reclaim control of the release of your features and get back to shortlived branches with true CI. However, what you're not told about feature flags in those simple “if/else” getting started demos is that there is an upfront cost to your development time, additional complexities, and some pitfalls to be careful of as you begin expanding feature flag usage to the organization. If you know how to navigate these complexities you will start to unleash true velocity across your teams.
In this talk, we'll get started with some of the feature flagging basics before quickly moving into some practical feature flagging examples that demonstrate its usage beyond the basic scenarios as we talk about UI, API, operations, migrations, and experimentation. We will explore some of the hard questions around “architecting feature flags” for your organization.
Travis is a Principal Software Engineer at GitHub focused on Developer Experience, where he works to improve how developers build, collaborate, and deliver software at scale. He is passionate about simplifying complex systems, shaping effective engineering practices, and creating environments where developers can move faster with greater clarity and confidence. A seasoned speaker, architect, and writer, Travis enjoys sharing insights, exploring emerging technologies, and helping teams turn better developer workflows into meaningful business impact.
More About Travis »