Как найти зависших кандидатов в найме, потратив всего 10 минут

Что значит «зависший кандидат»? Это кандидат на вакансию, находящийся на одном этапе воронки больше времени, чем положено.

Чем больше кандидатов одновременно в воронке, тем проще кого-нибудь из них потерять или пропустить момент своевременного взаимодействия с кандидатом.

Как найти зависших кандидатов в найме, потратив всего 10 минут

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

К сожалению, не все учётные системы дают аналитику в виде списка кандидатов, которые зависли на каком-то этапе. У некоторых весьма популярных ATS даже в самой продвинутой версии нет такой опции.

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

Постановка задачи

Цель вычисления такова: нам нужно увидеть кандидатов, которые находятся в некотором статусе дольше, чем положено.

«Кандидат находится на определённом этапе воронки найма» или «У кандидата установлен определённый статус» - термины часто идентичные. Будем использовать второй, со статусами.

Какие данные нам нужны?

Основа основ - данные для анализа. Если система позволяет, их можно выгрузить через интерфейс. В правильном варианте - лучше забирать регулярно по API из системы. Для упрощения работать будем в Excel.

Итак, что нам нужно?

1. Ожидаемое время нахождения кандидатов в каждом статусе – индивидуально для каждой компании. Как правило, это справочник (таблица) вида:

Как найти зависших кандидатов в найме, потратив всего 10 минут

При этом полагаем, что “Норма пребывания” – это скорее допустимый максимум пребывания. Как правило, указывается в рабочих днях.

“Это финальный статус” – пометка о том, является ли статус финальным. Ведь на финальных статусах вроде «Отказ» или «Принят на работу» кандидат может находиться бесконечно долго и нам это не важно в контексте решаемой задачи. Это не зависшие кандидаты. Финальный статус принимает значение «Истина» - для финальных статусов или «Ложь» - для всех остальных.

2. Время пребывания на каждом этапе воронки для каждого кандидата:

Для начала нам нужна история смены статусов. Или история переходов кандидатов по этапам воронки. В самом минимальном виде это таблица вида:

Как найти зависших кандидатов в найме, потратив всего 10 минут

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

3. Производственный календарь:

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

Как найти зависших кандидатов в найме, потратив всего 10 минут

“Тип дня” – рабочий или выходной.

Итак, нам нужно три таблички: справочник статусов, история статусов кандидатов и календарь.

Что считаем?

Здесь в работу включаются формулы. Такую математику можно проделать в BI, в Excel или в похожих инструментах.

Для начала - переводим цель вычисления на технический язык:

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

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

На самом деле, для каждой компании перевод с языка бизнеса на язык технический может иметь свои нюансы.

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

Как считаем?

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

1) “Это финальный статус”

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

Метку финальности статуса находим по таблице с нормами. Формула находит поиском строку таблицы с нормами, у которой поле «Статус» совпадает со значением «Статус» текущей строки таблицы. Формула возвращает «Истина» или «Ложь.

2) “Это последний статус” Данный столбец даст нам возможность отфильтровать только те статусы, в которых кандидаты находятся сейчас. Полагаем, что анализ всех статусов будет полезен. Но стоит отделить последние от всех остальных.

Формула ищет в этой же таблице строку с максимальной датой статуса для этого же кандидата и этой же вакансии. Если максимальная дата статуса равна дате статуса в этой же строке, то формула возвращает «Истина», иначе – «Ложь, ведь есть статусы, присвоенные после текущего.

3) “Дата следующего статуса”

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

a. кандидат искомой строки равен кандидату текущей строки,

b. вакансия искомой строки равна вакансии текущей строки,

c. дата статуса искомой строки больше даты статуса текущей строки,

d. из оставшихся строк нужна строка с минимальной датой статуса.

4) “Длительность статуса”

Если мы опираемся на собственный производственный календарь, то нам необходимо формулой вычислить сколько строк в таблице с календарём удовлетворяют следующим условиям:

a. дата календаря превышает дату текущего статуса,

b. дата календаря не превышает дату следующего статуса,

c. тип дня – рабочий.

Для финального статуса формула возвращает пустое значение.

5) “Отклонение”
Сравним полученный результат с нормой пребывания в данном статусе. Для этого формула по статусу ищет из таблицы с нормами – норму пребывания в статусе. Если статус не финальный, то формула возвращает превышение фактического пребывания в статусе с нормативным значением (если оно есть). Для финального статуса формула возвращает пустое значение.

Таким образом, у нас таблица с историей статусов будет выглядеть следующим образом:

Как найти зависших кандидатов в найме, потратив всего 10 минут

Что можно понять из таких вычислений?

Отфильтровав таблицу или построив на основе полученной таблицы несколько сводных таблиц, мы можем найти ответы на разные вопросы:

1) Текущие зависшие кандидаты

Фильтры: “Отклонение” > 0; “Последний статус” = Истина; “"Финальный статус” = Ложь

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

Как найти зависших кандидатов в найме, потратив всего 10 минут

2) Статистика отклонений

Фильтры: “Отклонение” > 0; “Финальный статус” = Ложь

Группировка по вакансиям и статусам, Количество кандидатов на каждом статусе с отклонением, Среднее отклонение

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

Как найти зависших кандидатов в найме, потратив всего 10 минут

3) Если бы у таблицы статусов был бы ещё и столбец с рекрутёром, который перевёл на этот статус, то сгруппировав сводную таблицу по рекрутёрам и статусам, усреднив время отклонения, можно было бы проанализировать эффективность рекрутёров в вопросе работы с кандидатами.
А какие выводы вы бы сделали из такой аналитики? Какой информации вам не хватает в разборе? Было бы интересно посмотреть пример реализации такой логики, скажем на формулах в Excel?

Поделитесь, пожалуйста, в комментариях ☺

Если хотите получить готовые шаблоны для расчета зависших кандидатов, оставьте заявку на нашем сайте, и мы вышлем вам все формулы бесплатно!
Дополнительно, в нашем Телеграм-канале Это точно можно сделать быстрее вы найдете еще больше полезных материалов. Подписывайтесь, чтобы не пропустить важные инсайты и сделать ваш HR-процесс быстрее и эффективнее.

44
Начать дискуссию