Feature flags на собеседовании системного аналитика
Карьерник — Duolingo для аналитиков: 10 минут в день тренируй SQL, Python, A/B, статистику, метрики и ещё 3 темы собеса. 1500+ вопросов в Telegram-боте. Бесплатно.
Содержание:
Зачем спрашивают на собесе SA
Feature flags — must-have для современного deployment. На собесе SA: «зачем флаги», «отличие от A/B».
Виды feature flags
Release flags. Скрывают unfinished фичу. Ship code, hide functionality. Trunk-based development.
Experiment (A/B) flags. Разделение users на test groups.
Permission flags. Включить feature для специфичных users (premium, admin).
Operational flags / kill switches. Отключить функцию при проблемах.
Каждый тип имеет разные lifecycles.
Применения
Trunk-based development. Code merges main каждый день, hidden under flags. Никаких long-lived feature branches.
Gradual rollout. Сначала 1%, потом 10%, 50%, 100%. Уменьшает blast radius.
Beta access. Pre-release access для select users.
Quick rollback. Bug в проде — flip flag, без deploy.
Personalization. Premium users видят расширенные features.
Rollout strategies
Boolean (on/off). Самый простой. На / выкл всем.
Percentage rollout. Hash user_id, активировать для X% (deterministic).
Targeting rules. «User in country=US AND plan=premium AND created_at > 2026-01-01».
Schedule. «Включить в 10:00 UTC 2026-06-01».
Multi-variant. A / B / C — несколько вариантов.
Tech debt
Главный риск feature flags. Они накапливаются.
Code:
if (flag.isEnabled("new_checkout")) {
// 6 months later, this is 100% of users
newCheckout();
} else {
oldCheckout(); // dead code
}Решение. Lifecycle management:
- Flag created + owner.
- Removal date / criteria.
- Quarterly review — old flags clean up.
- Auto-detect unused flags.
Без cleanup — codebase превращается в spaghetti с conditionals.
Tools
LaunchDarkly. Industry leader. Real-time, target rules, audit log. Дорого.
Split.io. A/B + flags.
Unleash. Open source.
ConfigCat. Cheaper alternative.
DIY. Простые flags через config + cache. Подходит для маленьких проектов.
В РФ: чаще DIY (Vault, Consul, custom). Managed services недоступны / дороги.
Связанные темы
- Canary и shadow deployment ML на собесе DS
- Acceptance Criteria для SA
- Scrum vs Kanban для SA
- DoR и DoD для SA
- Подготовка к собесу системного аналитика
FAQ
Flag overhead на performance?
Lookup ~ μs если cache. Bandwidth — minimal. Для high-frequency loops — кеширование вне.
Это официальная информация?
Нет. Статья основана на индустриальной practice (Martin Fowler «Feature Toggles», LaunchDarkly docs).
Тренируйте системный анализ — откройте тренажёр с 1500+ вопросами для собесов.