Dabish Digital
Development

Feature flags for small teams

This is cheap to get right at the start and expensive to retrofit. Most advice about feature flags assumes a team that does not exist at your size. Here is the version that does not.

The question is rarely whether something can be built, but what it costs to keep running afterwards. Doing this properly once is usually cheaper than doing it approximately three times.

What to keep

Flags let you ship code before you ship the feature. In practice this is a scheduling problem more than a technical one. Write the reasoning down alongside the decision, because the reasoning is what changes first.

What to drop

Process that exists to coordinate ten people is overhead when there are two of you. That sounds obvious written down. It is still the thing most often skipped.

Where to start

Delete flags once they are permanently on. In practice this is a scheduling problem more than a technical one. Anything you cannot measure here, you are deciding by taste, which is fine as long as everyone knows it.

How to tell if yours is fine

Most development decisions are really maintenance decisions wearing a different hat. Three things worth confirming about feature flags before you move on:

  • Someone can say what the current setup is without going to look
  • Delete flags once they are permanently on — and you know whether that is true here
  • There is a way to tell whether the last change to this helped

If you are not sure where your systems currently stand on this, it takes us about an hour to find out.