Finn Glover, CEO of Schematic, and Ben Papalon, CTO, share their expertise in software and startups. They dive into the complexities of feature flags, highlighting the gap between theory and reality in software development. The duo discusses managing technical debt and the risks of flag retention. They also introduce innovative approaches to feature management that enhance pricing flexibility and user experience. Additionally, they explore challenges startups face with feature flags, balancing engineering needs with business strategies.
Feature flags, while beneficial for experimentation and rollout, often lead to maintenance challenges, resulting in tangled codebases and reduced developer productivity.
The evolution of feature flags into entitlement management emphasizes their role in monetization strategies, allowing businesses to efficiently experiment with pricing models without overwhelming development teams.
Deep dives
Origins in Software Development
Both guests have a rich history in the startup ecosystem, with diverse journeys leading to their current roles. Ben Papalon began his journey as a high school intern at a startup focused on email products, eventually growing into roles in early-stage engineering for various B2B SaaS companies. Finn Glover started his first company in 2012, transitioning from a lifestyle business to a software company after recognizing a market opportunity. Their paths converged around 2016, leading to the creation of Schematic, a venture aimed at addressing modern software development challenges.
Challenges of Feature Flags
Feature flags are a powerful tool intended for managing new feature releases and experimentation, but they often present significant challenges in practice. While the theory suggests feature flags should be short-lived, many remain in codebases, leading to 'zombie flags' that complicate systems without delivering value. The discussion highlights that developers frequently lack clear guidelines on when to remove these flags, which can result in a tangled codebase filled with unmonitored conditions. Ultimately, this situation creates unnecessary complexity and cognitive load for engineers, which can hinder productivity.
Managing Feature Flags Effectively
To cope with potential feature flag sprawl, it is recommended to adopt a mindset that accepts their presence while implementing efficient management practices. Finn and Ben advocate for structuring feature flags in a way that accommodates long-lived flags for specific use cases, like pricing models or user access levels. Implementing architectural strategies, such as using middleware or component-based systems, can streamline the management of feature flags, reducing clutter and preventing confusion. By preparing the codebase effectively, software teams can minimize the impact of feature flags on overall functionality.
Expanding Feature Flags into Business Strategy
Feature flags have evolved beyond just deployment tools; they now hold potential for enhancing business processes, particularly around pricing and packaging strategies. The guests emphasize that traditional methods, like hard-coded entitlements, create technical debt that burdens development teams with ongoing maintenance. Instead, incorporating feature flags into monetization strategies allows business units to manage features without constant developer involvement. This shift not only facilitates agility in addressing market demands but also fosters innovation, enabling businesses to experiment with new pricing models efficiently.
Listen to Bill Tarr from AWS and Brian Rinaldi (then at LaunchDarkly and now at Localstack) talk about the opportunity to extend feature flags beyond deployment and rollout and into entitlement management and monetization.