Unleash

Feature Flags: Build or Buy?

Deciding whether to build your own feature flag system or to license a commercial solution can significantly impact your development process and overall business operations. It’s a choice that seems straightforward but carries profound long-term implications. This blog will guide you through the essential considerations in making this critical decision.

Tl;dr Most enterprises start with a homegrown feature flag solution because adding “if statements” to the codebase seems relatively straightforward. Fast-forward years, and they end up with a solution that is expensive to maintain, hard to change, and still doesn’t do everything everyone wants. This is exactly what happened with Wayfair, who built their own feature flag platform prior to adopting Unleash. But as the head of Engineering Enablement at Wayfair said:

“We flipped the most important flag we could when we went from our in-house system to Unleash. Right away we found that it was scalable, highly performant, resilient out of the box. And Unleash ended up being 1/3 the cost of our homegrown feature flag solution while also improving the reliability and scalability of our platform.”

You can read more about how Wayfair saved millions by moving to Unleash, or read on for details.

How Teams Start Their Feature Flag Journey

Initially, many development teams don’t see the need to integrate feature flag support into their systems. Over time, scenarios arise where soft-launching features becomes essential, such as:

  • Turning off a new feature exhibiting errors that are difficult to debug.
  • Deploying a canary to test a new feature instead of risking a problem that impacts all customers.
  • Previewing a feature to a select group of stakeholders.
  • Launching a feature minimally but keeping it under wraps until a launch event.
  • A/B testing different UIs for one feature.

Given that a feature flag appears to be “just a toggle,” many teams opt to build their own solutions.

Feature Flags Build or Buy: The Build Argument

The Case for Building Your Own

Teams often choose to build their own feature flag solution for several reasons:

1. Existing Infrastructure: They may have already developed an internal solution.

2. Perceived Complexity: They believe their use cases are too complex for commercial solutions.

3. Desire for Control: They want to manage key parameters like performance, security, and feature sets in-house.

The Challenge with Building Your Own Feature Flag Solution

However, many teams encounter significant challenges when maintaining their own solutions over time. The main issues include:

Running Yet Another Service Gets Costly

Building your own solution means managing a new service that needs to scale, be resilient, perform well, and remain secure. This engineering burden increases over time, driving up maintenance costs. As mentioned above, Wayfair spent over $3 million dollars a year collectively on its homegrown solution.

The Risk of Service Outage Increases

The average application downtime event costs $400,000/hour and over half of organizations experience unplanned downtime at least every two months. As the complexity of a homegrown feature flag solution grows, and the number of users expands, the likelihood that the system can take down your application increases, bring significant costs with it.

Performance Degrades with Scale

Achieving high performance requires substantial time and financial investments. Solutions built for a handful of teams may not scale to support thousands or millions of flags across the enterprise.

Security and Compliance Become Challenging

Adding security and compliance features requires additional investment in time and resources. Many teams struggle to implement necessary features, leaving them vulnerable to security risks and compliance issues. These features include things like SSO integration, change requests, audit logs, and more.

Feature Flag Build vs. Buy: The Buy Argument

The Benefits of Buying a Commercial Feature Flags Solution

Enterprise feature flag systems, like Unleash, offer several benefits over homegrown solutions:

Saves Cost vs. Building Yourself

Buying a feature flag service eliminates the need to allocate resources to building your own. This allows teams to focus on customer-oriented product features, and you can leverage the collective expertise of a large developer community. Unleash, for example, has had hundreds of developers contributing since 2020, representing 22 person-years of development. As Wayfair found out, they were able to improve scale and reliability while spending only ⅓ of what they were on their homegrown feature flag solution.

Provides Scalability and Reliability Out-of-the-Box

A commercial solution is purpose-built to scale and is proven in production environments. For instance, Unleash can serve 7.5 trillion flags a day on a single instance, offering a level of scalability and reliability that is challenging to achieve with a homegrown solution. On a typical busy day, Unleash seamlessly manages over 20,000 requests per second for Wayfair, ensuring smooth and reliable feature rollouts.

Provides Full-Fledged Security & Compliance Features

Commercial solutions come with advanced features without the need for in-house development. Unleash, for example, supports FedRAMP, SOC2 Type II compliance, undergoes regular pen testing, and complies with regulations like GDPR. Change requests and audit logs come out of the box.

Feature Flags: Build or Buy – or Buy and Build?

The decision isn’t strictly between building or buying. The optimal approach is to buy and then build—license a system with the necessary features and flexibility to customize it to your unique needs.

Unleash: The Best of Both Worlds

Unleash customers often choose the platform because it allows them to adapt it to their needs without being forced into a standardized way of working. This flexibility is crucial for competitive software development teams. With Unleash you get:

  • More than the basics: Unleash provides a lot more than basic flags including sophisticated feature activation strategies like gradual or percentage rollouts, canary deployments and a/b/n testing.
  • Cost savings: Most customers save money by switching to Unleash because resources allocated to managing their feature flag solution are freed up to work on other projects.
  • Advanced change controls: Unleash Change Requests subject every flag to an approval workflow that you define so that you always know who released what and to whom.
  • Advanced compliance: Unleash Audit logs give you a complete picture of who released what and to whom.
  • Integrates with your stack: Unleash integrates with any [metrics or analytics] provider so your flag data can inform your [DevOps monitoring or a/b testing] process.
  • 99.99% uptime: The Uptime of Unleash hosted offering was 99.99% for the last 3 years and we can help you get to 4 or 5 nines with our self-hosted offering.
  • Massive scale: Unleash can easily serve 7.5 trillion flags a day using minimal resources
  • Collaborate across your entire org: Unleash’s architecture with shareable components allows dozens or hundreds of teams to collaborate on building great software.
  • Trusted in production: Unleash is trusted by thousands of companies in production to deliver on these benefits and more. We serve the needs of some of the largest and most security-conscious organizations in the world, but we were also rated the “Easiest Feature Management system to use” by G2.

Still think you’d have a hard time selling the idea of going with Unleash to the powers that be? Here are some of the most compelling arguments for switching from a homegrown feature flag solution:

  • Eliminate downtime cost: The average application downtime event costs $400,000/hour and over half of organizations experience unplanned downtime at least every two months. Unleash eliminates downtime risk of problematic features, paying for itself many times over. In addition to its stability, which has been validated by thousands of users, Unleash Support services include 24×7 and SRE On Call shifts to execute an Incident Response Plan and solve any downtime faster.
  • Save engineering time and money: Unleash started as a homegrown solution supporting one enterprise. Due to the complexity of enterprise needs, it grew into an OSS project, and then a company. Since 2020, hundreds of developers have contributed to the Unleash feature management platform, with our company alone investing over 22 person-years of professional software development. That means you don’t have to.
  • Low switching cost: Switching to Unleash is easy, and cheaper than you think. One of the largest retailers in the US seamlessly migrated over 15K feature flags and more than 1000 developers to Unleash , removing a fragile part of their stack that had previously led to downtime during the holiday shopping season at a cost of $3.4 million/hour.
  • Remove maintenance costs: The initial investment to build a feature flag solution is only one part of the TCO calculation. Over time, maintenance can amount to 90% or more of the cost of the initial build. And that is only for true maintenance like patches and migrations. More commonly, we see our customers continue to invest development resources into their feature flag solution to add functionality or integrations which costs engineering time, and distracts from your core mission.
  • Make devs more productive: Software engineers are one of most expensive classes of knowledge workers with a median salary nearly 3 times that of other jobs. That investment is greatly diminished, however, if developers spend their time fighting their tools, instead of innovating. Developers who find their tools and work processes intuitive and easy to use feel they are 50 percent more innovative compared with those with opaque or hard-to- understand processes.

By evaluating your team’s specific needs and weighing the long-term costs and benefits, you can make an informed decision that will support your development goals and business objectives. Whether you build, buy, or opt for a hybrid approach, ensuring robust and flexible feature flag management is key to successful software delivery.

Ready to see how Unleash can streamline your feature flag management? Try Unleash for free today.

Share this article