Close

Управление инцидентами для высокоскоростных команд

Плюсы и минусы различных подходов к управлению дежурствами

Современный мир наиболее сильно зависит от сервисов с непрерывной работой. Сбой в их работе может повлиять на миллионы людей и спровоцировать значительные последствия: люди не смогут оплатить счета, забронировать авиабилеты или пообщаться по видеосвязи с друзьями.

Независимо от проблемы — серьезный баг, нехватка ресурсов или полная остановка системы — пользователи ваших сервисов будут ожидать немедленной реакции. То же относится и к внутренним командам.

Инциденты не только провоцируют большие затраты (в Северной Америке они ежегодно обходятся компаниям в 700 млрд долларов США), но и могут серьезно сказаться на репутации компании, продукта и команды.

Учитывая, что на карту поставлено так много, в график дежурств стали включать команды разработчиков и ИТ, чтобы в случае возникновения инцидента у организации всегда были наготове специалисты, способные решить проблему.

Справедливое расписание дежурств в сочетании с планом компенсаций за дежурство способствует формированию культуры совместной ответственности и помогает командам лучше понять, что нужно для создания отказоустойчивого ПО и сервисов. Это позволяет улучшить качество продукта и снизить количество сбоев.

Что такое дежурство?

Дежурство — это практика назначения конкретных сотрудников, которые должны быть доступны в определенное время, чтобы отреагировать при возникновении срочной проблемы с обслуживанием, даже если формально не находятся на работе.

Дежурство является очень важной обязанностью многих команд ИТ, разработки, поддержки и эксплуатации, ответственных за сервисы, от которых клиенты ожидают круглосуточной доступности. Участники команд дежурят ротациями, заступая круглосуточно или только в нерабочее время. Наряду с автоматизированными решениями по мониторингу и оповещению дежурный инженер должен незамедлительно реагировать на любые перебои в доступности сервисов.

Повышение важности дежурства для ИТ-команд и разработчиков ПО

Иногда о дежурстве отзываются нелестно. Некоторые ветераны ИТ рассказывают страшилки о том, как их команды были на пределе, но никто не пришел на помощь, поэтому они не смогли должным образом отреагировать на инцидент.

Многие из этих поводов для беспокойства можно устранить, если правильно организовать дежурства. Эффективный план дежурств позволит команде выполнять масштабирование с учетом расширения услуг, обеспечивать стабильную поддержку критически важных ИТ-функций и быстро реагировать на инциденты.

Хороший план управления дежурствами не только позволяет справиться с простоями, но и предлагает множество других преимуществ. С каждым сбоем команды получают возможность освоить новые навыки, например лучше понять работу критически важного сервиса, увидеть, как он реагирует на сбои, и придумать, как уменьшить количество сбоев или улучшить план реагирования на инциденты.

Наличие хорошей программы дежурств, основанной на культуре общей ответственности, помогает укрепить дух товарищества, уменьшить выгорание и удержать кадры.

Плюсы и минусы дежурства

В организациях, практикующих DevOps, команды разработчиков ПО берут на себя большую ответственность за надежность и доступность сервисов, то есть выполняют работу, которой раньше занимались исключительно операционные команды. Теперь команды действуют по принципу «кто разработал, тот и поддерживает». Разработчики лучше всех знают код, поэтому часто им эффективнее всего удается устранить проблемы в кратчайшие сроки.

В результате разработчики могут создавать более качественное ПО, в котором реже возникают сбои. Передача ответственности стимулирует разработчиков тщательно тестировать код, поскольку в случае проблем с сервисом именно их могут вызвать в нерабочее время.

В итоге повышается отказоустойчивость систем, а благодаря большему количеству сотрудников, способных справиться с инцидентами, уменьшается выгорание работников.

Без хорошей программы дежурств организации не смогут использовать все преимущества культуры DevOps или удовлетворить потребности масштабируемой инфраструктуры. Если при реагировании на инциденты одна команда нагружена сильнее остальных, ее участники не смогут хорошо выполнять свою основную работу. Разработчикам не удастся реализовать рекомендации по результатам инцидентов, а реагирующим лицам — усилить свои системы.

Если обязанности распределены неравномерно, дежурные сотрудники не смогут освободиться от работы и быстро подвергнутся выгоранию.

Полезный план учитывает реальные потребности организации по дежурствам, равномерно распределяет время между командами разработчиков и ИТ-специалистами и предусматривает сбор данных для постоянного улучшения. Такой план не только позволит улучшить обслуживание клиентов, но и поможет сотрудникам повысить квалификацию и усовершенствовать продукт, так что они будут с нетерпением ожидать дежурства.

Как улучшить дежурство для разработчиков

«Я мечтаю провести вечер, наблюдая за развертыванием и реагируя на возможные сбои!» — фраза, которую не скажет ни один инженер.

Поскольку все больше разработчиков берутся за сопровождение собственных сервисов, важно убедиться, что они справятся с обязанностями дежурного. И лучше всего проверить это при приеме на работу.

Ни для кого не секрет, что талантливые инженеры очень востребованы на рынке. Кроме того, важно учитывать, что деньги не являются единственным стимулом для сотрудников. Поэтому повышение оплаты разработчикам за переработки не всегда решает проблему (подробнее о компенсации за дежурства см. далее). На собеседовании у разработчиков ПО обычно возникают вопросы о том, как часто им придется тратить личное время и дежурить по графику.

Покажите документированный план дежурств, в котором справедливо распределены обязанности между компетентной командой разработчиков и инженерами по техническому обеспечению надежности (SRE). Так вы сумеете убедить новых сотрудников в том, что в вашей организации управление дежурствами находится под контролем. С документированным планом вы можете быть полностью открытыми во время собеседования и удостовериться, что кандидаты готовы участвовать в дежурствах.

Пять простых способов сделать дежурство удобнее для разработчиков

  1. Четко определить обязанности дежурных
    Обязанности дежурных должны быть четкими и понятными. Это поможет избежать выгорания, путаницы и раздражения. Рекомендуется документировать процесс реагирования на инциденты и ожидания от дежурства.
  2. Убедиться, что оповещения назначены нужным сотрудникам
    Старайтесь эффективно использовать средства оповещения. Четкая организация потока с нужными уведомлениями и дублированием позволит избежать многих проблем.
  3. Назначить основных и резервных реагирующих лиц
    Жизнь человека не останавливается, когда он заступает на дежурство. Неожиданные личные обстоятельства могут отвлечь разработчика как в течение рабочего дня, так и во время дежурства. Наличие резервного исполнителя позволит ограничить потенциальный ущерб от подобных перерывов в работе.
  4. Выполнить тонкую настройку графика
    Ситуация в командах может меняться, поэтому график дежурств должен быть гибким. Рекомендуется регулярно пересматривать, корректировать и совершенствовать методы организации дежурств.
  5. Убедиться, что дежурные знакомы со всеми необходимыми средствами диагностики и имеют к ним доступ
    Команды используют разные инструменты для отслеживания работы систем, производительности приложений, использования ресурсов и т. д. Дежурные инженеры должны быть знакомы со своими инструментами и иметь надлежащий доступ к ним.

Как улучшить дежурство для специалистов ИТ-поддержки и обслуживания

Не только разработчики проводят больше времени на дежурстве. Круглосуточная поддержка функционирования бизнеса становится все более важной для команд ИТ-поддержки и ИТ-обслуживания.

Эти команды сталкиваются с большинством проблем дежурных разработчиков, таких как стресс, выгорание, путаница в ролях и обязанностях, а также проблемы с доступом к инструментам.

ИТ-команды испытывают дополнительный стресс из-за того, что им часто приходится работать в одном здании с клиентами, которые могут замедлить работу потоком отвлекающих сообщений (по электронной почте, через Slack и даже лично) в связи с инцидентом.

Вот несколько приемов, которые позволят держать ИТ-инциденты под контролем.

  • Оперативное и открытое информирование. Упреждающее информирование об ИТ-инцидентах покажет, что вы проявляете ответственность и контролируете ситуацию.
  • Отслеживание важной информации. Большинство команд ИТ-обслуживания используют то или иное ПО службы поддержки. Для сбора информации по заявкам очень важно использовать нечто большее, чем просто поля ввода данных в свободном формате.
  • Внедрение системы мониторинга. По традиции многие операционные ИТ-команды лично контролируют дашбоарды производительности, чтобы отслеживать сбои. Сделайте доброе дело — предоставьте команде инструменты мониторинга и оповещения.

Компенсация за дежурство

Хороший план компенсаций за дежурство позволяет вознаградить сотрудников за консультационные услуги и сверхурочную работу. Если сотрудники чувствуют заботу, они тоже будут проявлять интерес по отношению к компании и вести ее к успеху.

Согласно Закону США о справедливых трудовых стандартах (FLSA) — федеральному закону, который устанавливает требования к минимальной заработной плате, сверхурочной работе и минимальному возрасту для работодателей и работников, — если сотрудник находится на связи, но в это время может заниматься чем угодно, считается, что он «ожидает, когда его привлекут к работе», а следовательно, не работает.

Если свободное время сотрудника ограничивают и он не может заниматься своими делами, то, согласно FSLA, это время ожидания вызова может считаться «отработанным» и заслуживает компенсации.

Местное законодательство может отличаться, поэтому обязательно проконсультируйтесь со специалистом. Учтите полученные сведения и запланируйте разработку конкурентоспособного и справедливого плана компенсаций, который будет поддерживать культуру совместной ответственности.

Различные планы компенсаций за дежурство

1. Поощрение за дежурство

Стимулирующие планы компенсаций за дежурство предусматривают вознаграждение сотрудников, которые занимались работой во время дежурства, дополнительными отгулами, гибким графиком, более высокой основной заработной платой или сочетанием этих вариантов.

Преимуществом такого подхода к компенсации за дежурство является развитие чувства сопричастности к оказываемым услугам, которое приводит к повышению отказоустойчивости систем.

Достаточное количество отгулов и конкурентоспособная оплата дают понять сотрудникам, что их работу уважают и ценят. Это предотвращает выгорание и уменьшает текучесть кадров.

2. Компенсация за дежурства в неурочное время

Выплата компенсации за дежурство означает, что сотрудники получают фиксированное вознаграждение за время, проведенное на дежурстве или запланированное для работы, даже если в течение их смены не возникает проблем.

Очевидным преимуществом такой модели компенсации за дежурство является материальная мотивация. Уверенность сотрудника в том, что ему заплатят за ношение пейджера (или, скорее всего, ноутбука либо мобильного телефона), поможет смириться с обязанностью находиться на связи и ожидать вызова, даже если никаких проблем не возникает.

3. Компенсация за время, потраченное на решение проблем

Другой подход к компенсации за дежурство заключается в том, что сотрудникам оплачивают только время работы над устранением инцидента. Существует несколько способов расчета компенсации.

  • Сумма, выплачиваемая за работу во время дежурства
  • Почасовая оплата за обработку оповещений или проблем
  • Плата за количество обработанных оповещений и проблем

Преимуществом этой модели является то, что сотрудникам оплачивают дополнительную работу за пределами рабочего дня. Но есть и потенциальный недостаток — отсутствие финансового стимула к уменьшению количества оповещений и проблем, что может негативно сказаться на общей работоспособности систем.

4. Компенсация за дежурства в неурочное время и время, потраченное на решение проблем

Это сочетание двух предыдущих моделей. Некоторые компании оплачивают время, указанное в графике дежурств, а также выплачивают дополнительную сумму за полученные оповещения и обработанные проблемы. Положительная сторона этой модели компенсации за дежурство заключается в том, что сотрудники чувствуют — дополнительное время и усилия, потраченные по просьбе организации, хорошо оплачиваются. Кроме того, если кто-то столкнется с особенно сложной проблемой и потратит на нее много личного времени, он получит финансовую компенсацию за свою жертву. Но с другой стороны, подумайте, правильно ли для корпоративной культуры вознаграждать за наличие ошибок в программном обеспечении.

На что еще следует обратить внимание

Мы описали типичные модели планов компенсаций за дежурство. Но есть и другие факторы, которые следует учитывать в зависимости от обстоятельств.

  • Количество оповещений, полученных в рабочее и нерабочее время

Этот показатель очень важен. С его помощью можно определить, нужен компании график дежурств в нерабочее время или можно организовать специальную дежурную команду в рамках рабочего дня.

  • Время, затрачиваемое на устранение инцидентов

Сложность и важность инцидентов в организации могут быть разными. Дежурный инженер может решить проблему за несколько минут, а может потратить на устранение инцидента целую ночь. Следует учитывать, сколько времени и усилий затрачивается в течение типичной дежурной смены. Это необходимо для справедливой компенсации.

  • Среднее время подтверждения и решения проблем

Время подтверждения, установленное правилами эскалации, особенно важно для быстрого устранения инцидентов. Измерив среднее время подтверждения и решения проблем за определенный период, менеджеры могут принять решение о дополнительном стимулировании.

Заключение

Правильные инструменты упрощают навигацию по политикам дежурства. С помощью улучшенных решений для управления инцидентами можно управлять расписанием дежурств, отслеживать оповещения и поддерживать удовлетворенность и работоспособность сотрудников. Возможности оповещения в Jira Service Management позволяют командам централизованно обрабатывать и фильтровать оповещения во всех инструментах мониторинга, ведения журналов и CI/CD, чтобы обеспечить быстрое реагирование и при этом не перегружаться оповещениями.