Перейти к содержимому
AI HR Bot

· AI HR Bot · 2 мин чтения

Как на самом деле начисляется баланс отпуска

Спросите бота, сколько у вас дней отпуска, и он ответит числом вроде 11.66. Число выглядит странно дотошным, и дотошность — это и есть смысл: перед вами результат небольшой арифметики, которая каждый раз считает одинаково, и каждую её часть стоит объяснить.

По месяцу за раз

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

Приняты 31-го — месяц завершается 28 февраля: годовщина прижимается к последнему дню короткого месяца, чтобы никто молча не пропустил начисление только потому, что его даты в феврале не существует. Март снова ждёт 31-го; прижатие занимает день, но не сдвигает годовщину.

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

До четвёртого знака

Политика в 20 дней в год хранится как 1.6667 дня в месяц — четыре знака после запятой. Через двенадцать месяцев на счету 20.0004 дня. Этого числа вы никогда не услышите, потому что бот сообщает величину, округлённую до двух знаков, и округлённую вниз: услышав «11 дней» при фактических 10.99, вы забронировали бы день, которого у вас нет. Бот никогда не называет больше дней, чем есть на самом деле.

20
2025-01-15
2026-01-15

1.66 дн./месяц

Полных месяцев
12
Хранится в учёте
20.0004 дн.
Что сообщает бот
20 дн.

Предполагается, что политика действует с даты найма и ничего не потрачено. Балансы хранятся с точностью до четырёх знаков; бот сообщает два, округляя вниз — он никогда не называет больше дней, чем есть на самом деле.

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

Края, названные вслух

Их три — потому что названные края и делают середину правдоподобной.

Нет даты приёма — нет начисления. Если даты приёма нет в записях, бот её не угадывает: правдоподобная подстановка позже будет неотличима от настоящего стажа. Отсутствующая дата показывается вашему руководителю HR как единственное, что он действительно может починить.

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

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

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

Начать бесплатно

Подключается к вашему Slack примерно за 2 минуты.