What's the Point to Feature Flags?


Team-Driven Developer

A newsletter with tips and tools for building software as a team

The first time I hit the proverbial "deploy button" as a software engineer, I was anything but calm.


While we were confident in our tests, we always feared, "What if something goes wrong?" or "What if we missed a critical test case?"

This first deployment went fine, but over the past decade, I've had my fair share of botched deployments or the need to rollback quickly. It's not a fun place to be in.


During that time, I've learned a lot about mitigating risks in deployments and the software development process in general. These techniques range from asking better questions during requirements gathering, focusing on incremental development, and utilizing tools like linters and static analysis.


One technique rises to the top for me: feature flags. Feature flags are a tried and true tactic that, when used with discipline, have massive benefits to your development process.


Team-Building Exercise

This week's team-building exercise goes beyond feature flags to the root of my "What's the Point?" series: what are some practices you'd like to adopt on your team in 2025?

I know we are well into the year at this point and many goals and OKRs have been finalized. If you've got that all squared away don't let my newsletter make you question those goals!

But if you are still trying to iron them out or think you could benefit from an extra one, consider taking a broader look at how your team ships code to production and ask "What could we do better?"

For some teams, feature flagging might be a great start (we are focusing on that on my team this year). For others, maybe you still haven't gotten everyone to write unit tests and embrace continuous integration. Or maybe still you've yet to rely on metrics and observability.

Whatever the next best step is for your team, start charting a path toward adopting some of these best practices to help your team focus on building better and better software.


Here are some more resources from me to help you build better teams!​

  • 📕 Code Review Champion - My book on code reviews will help you become a world-class code reviewer. From giving kind feedback to navigating conflict, this book can help anyone wanting to sharpen their code review skills.
  • ❓​Questions for Devs - Building a team takes more than catching up about your weekend at standup. I've used these questions to build relationships with my team and push past the same old surface-level conversations.
  • ​📋 Pull Request Template - Maximize your efforts in pull requests by giving context right at the beginning of a new pull request. Copy and paste this template into your repo, and voilà!
  • 📊 ​Code Review Metrics - Start measuring how your team tracks against a few common code review metrics. This python script will pull your GitHub pull requests and generate a CSV you can slice-n-dice to get the data you want. It also has graphs! As this is an open-source project, your contributions and feedback would be great!

Other Creators I Recommend

Image for Daniel Schaefer

Daniel Schaefer

Subscribe if you are a software developer that has the technical skills, but you're looking for opportunities to enhance your soft skills to advance in your career.

Image for Looking for your next tech job?

Looking for your next tech job?

You're in the right spot. I'm Dr. Kyle Elliott, the founder and tech career coach behind CaffeinatedKyle.com, and I love giving away free resources that help to ensure your job search and career success.

Join 7,435+ fellow job seekers who have downloaded my free Job Search Launch Guide.

113 Cherry St #92768, Seattle, WA 98104
Unsubscribe · Preferences

Dan Goslen | The Team-Driven Developer

Learn the tips and tools for building software as a team! Every other week, I send a long-form article, a team-building exercise, and resources to help you build better software teams so you can build better software.

Read more from Dan Goslen | The Team-Driven Developer

Team-Driven Developer A newsletter with tips and tools for building software as a team Software engineers are all about principles and patterns. Short acronyms like DRY, YAGNI, KIS, etc., are used everywhere within the industry to try and concisely communicate an axiom of how to write software. One principle that arises within software engineering is that of reusability. We have this idea that we can build software components once and reuse them everywhere. The idea is that by building...

Team-Driven Developer A newsletter with tips and tools for building software as a team A few years ago, my wife and I replaced all the windows in our home. When it came time to install it, I figured it would take the better part of a week (it’s about 22 windows). Instead, the company said, “Oh, it takes about two days.” I was skeptical but guessed they would send a larger crew or something than I had imagined. On installation day, two guys showed up. Two! How were two guys going to replace...

Team-Driven Developer A newsletter with tips and tools for building software as a team 👋 Welcome to the first issue of 2025! And a special welcome to all the new subscribers over the holiday! Let's jump right in. As I’ve encountered more and more problems as a software engineer, I’ve often found myself having one of two knee-jerk reactions when faced with a new problem: 1) too easy 2) impossible. Of course, those reactions are extremes. Most problems lie somewhere in the middle. Additionally,...