Как принимается решение, кому звонить при проблемах в нерабочее время
Что проверяют
Как вы относитесь к дежурствам и понимаете ли, что решение «кому звонить» принимает процесс, а не человек в панике в три часа ночи. Следом обычно спрашивают, дежурили ли вы сами и что делали, когда пришёл алерт по вашему сервису.
Как отвечать
Опишите, как это устроено в зрелой команде:
- график дежурств: у каждого сервиса есть владелец и ротация, основной и резервный дежурный на неделю. Звонит не человек, а система оповещения;
- маршрутизация алертов: Alertmanager раскладывает алерты по меткам вроде
severityиteamна нужную ротацию; - эскалация: если основной не подтвердил алерт за оговорённое время, вызов уходит резервному, дальше руководителю;
- уровни серьёзности: ночью будят только то, что бьёт по пользователям прямо сейчас. Остальное становится тикетом на утро, иначе через месяц дежурные начнут игнорировать всё подряд;
- runbook: в описании алерта ссылка на инструкцию, что проверить и как откатить.
Привяжите к Go: алерты строятся на метриках из prometheus/client_golang, лучше по расходу бюджета ошибок SLO, а не по каждому всплеску CPU. Для разбора у сервиса должны быть net/http/pprof (закрытый от внешнего мира), health-эндпоинты и структурированные логи через log/slog.
Дальше свой опыт: как было устроено у вас, сколько длилась ротация, какой ночной инцидент был самым показательным и что поменяли после разбора. Нужны ваши примеры и цифры. Если дежурств не было, так и скажите, затем объясните, как бы организовали процесс, и что готовы дежурить. Здесь же уместно самим спросить работодателя: как часто дежурства, как они компенсируются и сколько ночных вызовов бывает в месяц.
Где спотыкаются
Отвечают «позвоню самому опытному». Это героизм вместо процесса: один человек выгорает, а когда он в отпуске, звонить некому.
Предлагают будить на каждый алерт. Шумные оповещения быстро приучают дежурных их игнорировать, и настоящий инцидент теряется среди ложных.
Не упоминают разбор после инцидента. Без безобвинительного постмортема и задач по итогам та же проблема разбудит команду снова.