Engineering Practice
Feature flags: free-recall review
Retrieval beats re-reading. For each prompt, say or write a full answer from memory before you open the model answer — the effort of recall is what makes the material stick.
Reconstruct the unit’s spine — deploy/release decoupling, the four flag types and their lifecycles, sticky rollout, the kill-switch, local evaluation, and flag debt — without looking back at the lesson.
- 01Explain how feature flags decouple deploy from release, and why that changes how a team ships.
- 02Name the four flag types and explain why recording the type matters for lifecycle.
- 03How does a sticky percentage rollout work mechanically, and what breaks if it is not sticky?
- 04Why do SDKs evaluate flags locally in memory with background sync rather than calling the flag service per check?
- 05What is flag debt, and what is the discipline that prevents it from becoming a Knight Capital?
- 06Why is 'every flag is a branch in production' the senior cost that balances all the velocity flags buy?
If you could reconstruct each answer from memory, you hold the unit’s spine: flags split deploy from release so code ships dark and releases by toggle; the four types have opposite correct lifespans so type is recorded; rollout must be sticky via a stable hash or variants flicker; evaluation is a local lookup so the flag service is never a hard dependency; and every live flag is a branch in production — 2^N configurations — so the discipline that prevents the next Knight Capital is lifecycle: expire release flags, label kill-switches permanent, and delete stale flags before one is reused.