← Все статьи

20 мая 2026 г. · отсутствия, отпуска, HR-процесс

Учёт отсутствий — согласование отпусков и больничных без бумажной волокиты

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

Из всех HR-процессов согласование отпусков — тот, который большинство компаний чинят последним и жалеют о задержке первым. Workflow «общий Google-календарь плюс Slack-сообщение руководителю» масштабируется примерно до 25 человек, дальше начинает давать предсказуемые сбои:

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

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

Апгрейд 1: один календарь, видимый всем

Минимальная жизнеспособная система отсутствий — это одно представление, показывающее подтверждённые отсутствия всех, с сортировкой по командам. Не «календарь HR», на который подписан только HR. Не «календарь руководителя его прямых подчинённых». Представление, которое любой открывает с любого устройства.

Приёмочный тест: когда проджект-менеджер планирует двухнедельный спринт, может ли он за 10 секунд проверить «есть ли в этом окне отсутствующие критичные люди». Если это занимает больше 10 секунд — не проверит, и вы получите сбой «оба не работаем, сюрприз».

Апгрейд 2: самостоятельные заявки вместо email-переписки

Сценарий: сотрудник открывает портал → «Запросить отпуск» → выбирает даты → выбирает тип (отпуск, больничный, отгул, отпуск за свой счёт) → опциональный комментарий → отправить. Общее время взаимодействия: 30 секунд.

Что система делает за этим:

  • Направляет заявку нужному согласовавшему / согласующим на основе отдела + цепочки руководителей.
  • Шлёт Slack/Telegram-сообщение или email каждому согласовавшему с кнопками одобрить/отклонить в один клик.
  • При одобрении: пишет в общий календарь, уведомляет заявителя, опционально ставит ему статус в Slack.
  • При отклонении: возвращает отклонение заявителю с причиной.

30 секунд — это планка. Больше — и люди вернутся к «напишу руководителю в DM напрямую».

Апгрейд 3: цепочки из нескольких согласующих для кросс-функциональной работы

По умолчанию в большинстве инструментов цепочка согласования — «прямой руководитель заявителя». Ломается в момент, когда кто-то матрично подчиняется или работает кросс-функционально.

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

  • Инженер, подчиняющийся EM и работающий на проекте: цепочка (EM, проджект-лид).
  • Junior-дизайнер с дизайн-лидом: цепочка (линейный руководитель, дизайн-лид).
  • Топ-менеджер: цепочка (CEO) плюс уведомление-только (председатель совета, EA).

Когда у вас цепочки с несколькими согласующими, важна и логика отклонения: любое отклонение отклоняет всю заявку, все согласующие видят причину отклонения. Все одобрения должны прийти до того как заявка считается одобренной. Большинство инструментов делают это неправильно — по умолчанию у них «первое одобрение побеждает», и тогда «не можем потерять тебя на следующей неделе» от проджект-лида игнорируется, потому что линейный руководитель уже одобрил, не глядя в проектный контекст.

Апгрейд 4: производственный календарь как first-class данные

Согласующим и заявителям нужно знать, какие дни являются нерабочими у того, для кого планируют. В одной стране это тривиально; в распределённой компании это источник трения номер один — «подожди, ты в этот день и так не работал?».

Система должна:

  • Хранить производственный календарь по стране, региону или офису (РФ-календарь с переносами выходных; США — федеральные плюс по штатам; календарь, специфичный для офиса клиента).
  • Показывать праздники в том же календаре, где видны отсутствия.
  • Не вычитать их из отпускных дней, когда заявка на отпуск перекрывает праздники.

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

Апгрейд 5: остатки и начисления без ежемесячного Excel

Политики отпусков — страново-зависимые и предметно-зависимые, поэтому «остаток отпуска» считать сложнее, чем кажется. Общий вид:

  • У каждого сотрудника есть годовая квота отпуска (типично 20-28 дней в РФ).
  • Дни начисляются помесячно (≈2.33 за месяц для 28 дней/год) или авансом на годовщину.
  • Использованные вычитаются на дату начала отсутствия (не на дату одобрения).
  • Правила переноса по ТК (28 основных + дополнительные; запрет переноса использованных, лимит на перенос неотгулянных).
  • Больничные, отгулы, командировки обычно не вычитаются из остатка отпуска.

Разумный портал ведёт всё это автоматически. Приёмочный тест: в любой момент каждый сотрудник видит свой текущий остаток, сколько использовал в этом году, сколько запланировано и сколько осталось. Годовая инвентаризация в HR должна смотреть на дашборд, а не запускать Excel.

От чего бы мы отказались

Две фичи, которые выглядят круто в демо, но редко окупают сложность в первый год:

  • Делегирование согласующих, когда они сами в отпуске. Звучит как обязательное; на практике большинство команд закрывают это нормой Slack «если меня нет, пингуй моего бэкапа». Встраивание делегирования в инструмент создаёт больше edge case'ов чем решает. Пропустить в году 1.
  • Правила испытательного срока, блокирующие отпуск в первые 3 месяца. Сильно различаются по юрисдикции и политике клиента — хардкод создаёт больше тикетов поддержки, чем экономит согласующим. Лучше как мягкое предупреждение («вы работаете меньше 90 дней — уточните у HR перед заявкой»), чем как жёсткая блокировка.

Накат за 4 часа

Если переезжаете с Excel — фактический rollout короче, чем ожидается:

1. Час 1: импорт сотрудников + отделов в портал (CSV).
2. Час 2: настройка цепочек согласования (большинство — просто «прямой руководитель»; кросс-командные исключения — по несколько минут каждое).
3. Час 3: импорт производственного календаря (у большинства порталов есть пресет для РФ).
4. Час 4: импорт текущих остатков отпуска из вашего Excel. Все начинают в новой системе с правильным балансом.

Команде: с понедельника все заявки на отсутствие — через портал; Excel переведён в read-only. Одно сообщение в Slack со ссылкой. Через неделю старые email-цепочки прекращаются сами.

Подход DTPulse

Мы относимся к отсутствиям как к first-class workflow'у. Настраиваемые per-tenant типы отсутствий (с разумными дефолтами), цепочки согласования из графа руководителей + глав отделов, семантика «любое отклонение отклоняет всё», производственный календарь per-офис, кнопки одобрения в Slack/Telegram, общее календарное представление на тенант, представление руководителя по прямым подчинённым. Self-service отслеживание остатков с учётом страновых начислений.

Целевое время отката за 4 часа реалистично — большинство пилотов в него укладываются.

Связанное чтение