Планування змін
1) Цілі та рамки
Планування змін забезпечує безперервну готовність платформи до інцидентів і піків трафіку без вигорання команд. Цілі:- гарантувати покриття SLO-критичних процесів (депозити, ставки/сеттл, висновки, KYC/AML);
- скоротити MTTA/MTTR в будь-який час доби;
- дотримуватися трудового законодавства та внутрішніх політик (вихідні/перерви/нічні).
2) Ролі та рівні підтримки
L1 (NOC/Operations): первинний тріаж, запуск runbook, ескалації.
L2 (Domain On-Call): Payments, Games/Core, Data/Infra - глибока діагностика і фікси.
L3 (SRE/Platform/Dev): зміни конфігурацій, патчі, аварійні релізи.
IC/CL (Incident Commander / Comms Lead): керує інцидентом і комунікаціями.
Duty Manager (за зміною): підтверджує staffing, ризики, freeze-вікна.
3) Моделі змін і ротацій
3. 1 24 × 7 покриття
8 × 3 (три восьмигодинні): Day (08:00–16:00), Swing (16:00–00:00), Night (00:00–08:00). Проста в управлінні, вимагає більше співробітників.
12 × 2 (дві дванадцятигодинні): Day (08:00–20:00), Night (20:00–08:00). Менше хендоверів, вище ризик втоми - використовувати з обмеженнями.
Follow-the-sun: EU → AMER → APAC, мінімальні нічні; вимагає розподіленої команди.
3. 2 Шаблони ротацій (приклад)
Panama/Pitman (2-2, 3-2, 2-3): чергування 12-годинних з тривалими вихідними (вимагає суворого контролю втоми).
4-on/4-off (12h): 4 дні по 12 год, 4 вихідних; підходить для L1 при хорошій автоматизації.
5 × 8 (класика): для L2/L3 + чергування on-call ночами/вихідні.
3. 3 Чергування on-call
Primary/Secondary: у кожного домену є первинний і вторинний on-call.
Shadow-on-call: навчання нових інженерів під крилом Primary.
4) Розрахунок штату і «усадки» (shrinkage)
4. 1 Базова формула FTE
Необхідні FTE на роль:
FTE = (coverage hours per week/productive FTE hours per week) × (1 + shrinkage)
Де shrinkage включає відпустку/лікарняні/навчання/1:1/ретро/адмін-час (зазвичай 20-35%).
Приклад (L1 24 × 7, 8-годинні):- 168 год покриття/35 продуктивних ч/нед ≈ 4. 8
- При shrinkage 30% → 4. 8 × 1. 3 ≈ 6. 2 FTE (округлюємо до 7 для стійкості).
4. 2 План по піках
Додайте коефіцієнт піку для подій (топ-матчі, турніри): + 10-25% FTE в календарні вікна. Використовуйте історичні графіки алертів/трафіку.
5) Покриття SLO і вікна ризику
Вибудуйте матрицю критичних годинників (локальне «прайм-тайм» GEO/методів оплати).
Встановіть мінімальний склад на слот (наприклад, Night: L1 × 2, L2-Payments × 1 on-call, L2-Games × 1 on-call, IC по ротації).
Для релізів/міграцій призначайте release guard (дод. L2/SRE) на період і + 60 хв пост-моніторингу.
6) Хендовери (передача зміни)
Структура 10-15 хвилин:1. Статус SLO/алертів і відкритих інцидентів.
2. Планові роботи у вікні + ризики.
3. Блокери/очікування (провайдери PSP/KYC, регламент).
4. Узгоджені комм-плани (статус-сторінка, партнери).
5. Перевірка складу зміни і контактів on-call.
Чек-лист хендовера повинен бути в wiki/боті; протокол - у вар-румі або змінному каналі.
7) Календар і заміни
Горизонт планування: 8-12 тижнів; заміни - не пізніше ніж за 2 тижні (крім форс-мажору).
Freeze-періоди: великі події/свята - заборона відпусток для ключових ролей (компенсується пізніше).
Buddy-rule: заміна тільки інженером того ж домену/кваліфікації або з доп. shadow.
8) Інтеграції з платформою
Алертінг: маршрутизація по активній зміні і доменам (P1→pager+var -рум).
Інцидент-бот: команди '/rota', '/whoisoncall', авто-згадки IC/CL.
Релізи: CAB синхронізований з розкладом змін; релізи поза покриттям - заборонені.
Статус-сторінка: CL з активної зміни підтверджений в боті.
9) Стійкість і здоров'я команди
Трудові норми: нічні/вихідні - доплати та відгули; максимум нічних підряд (наприклад, ≤3).
Перерви: кожні 2-3 години коротка перерва; при 12h - обов'язкові два довгих.
Fatigue-watch: ліміт годин/нед., правило «не більше N P1 за зміну на одного».
Психологічна підтримка: дебриф після важких P1, комп-тайм.
10) Мульти-регіон і follow-the-sun
Розділіть бренди/тенанти по регіонах (EU/LATAM/APAC) з локальними L1 і доменними L2.
Регіональні IC ескалують до глобального IC при крос-регіональних інцидентах.
Щоденний крос-регіонний хендовер (15 хв) з передачею ризиків і робіт.
11) Політики і RACI
Policy “Shift & On-Call”: хто, як і коли заступає; заміни; запізнення; Резерв.
SoD/доступи: IC/CL/фінансові операції - роздільні ролі; JIT-підвищення тільки через бот.
RACI: у кожної зміни - IC (A), Duty Manager (A/R), L1/L2 (R), Compliance/Sec (C), керівництво (I).
12) Інструменти та дані
Єдиний календар (з атрибутами: домен, регіон, контакт, резерв).
Дашборди навантаження змін: алерти/год, інциденти/тип, релізи/вікна.
Звіти справедливості (fair-share): покриття ночей/вихідних по людях.
Інтеграція з HR/PTO, щоб shrinkage вважався автоматично.
13) Метрики якості (KPI/KRI)
Coverage Rate: % годин з повним складом.
MTTA/MTTR по слотах: день/вечір/ніч.
Handover Defects: кількість відсутніх пунктів чек-листа.
Pager Fatigue: алертів/чол/нед.; нічні виклики (мета - ↓).
Replacement SLA: % закритих змін заміною ≤ 48 год до початку.
Training Coverage: частка змін з shadow-слотом для нових операторів.
Fair-Share Index: рівномірність ночей/вихідних по співробітниках.
14) Дорожня карта впровадження (4-8 тижнів)
Нед. 1–2: зібрати історію алертів/піків, визначити SLO-критичні вікна; вибрати модель (8 × 3 або follow-the-sun), порахувати FTE і shrinkage.
Нед. 3–4: опублікувати Policy «Shift & On-Call», включити хендовер-чек-лист, запустити загальний календар і команди бота '/whoisoncall', '/handover'.
Нед. 5–6: налагодити ескалації і заміни, додати fair-share звіти, синхронізувати ПАР/релізи зі змінами, ввести freeze-вікна.
Нед. 7–8: ретро по вигорання і якості хендоверів, корекція складу нічних, запуск shadow-програми і сертифікації IC/CL.
15) Шаблони та артефакти
Shift Rota (приклад для EU, Київський час):Handover Checklist (10 пунктів): SLO, інциденти, роботи, ризики, релізи, провайдери, доступи, статус-сторінки, відкриті тікети, staffing.
Replacement SOP: як оформити заміну, критерії допуску, контакт резерву.
Freeze Calendar: події/свята та заборони на РТО/релізи.
16) Антипатерни
Один on-call на все без доменного поділу.
12-годинні ночі поспіль без обмежень і перерв.
Релізи в годинниках без IC/CL/CL-доступності.
Хендовер «на усному слові», без чек-листа і записів.
Ігнор shrinkage → хронічний недокомплект.
Нульова shadow-програма → крихкість і SPOF по людях.
Підсумок
Планування змін - це інженерне завдання: розрахунок FTE і shrinkage, чесна ротація і охорона здоров'я, суворі хендовери та інтеграція з алертингом/ChatOps/CAB. Такий каркас забезпечує передбачуване 24 × 7 покриття SLO, швидкі реакції на інциденти і стійкість бізнесу без вигорання команд.