Как убрать резюме с суперджоб
Как скрыть резюме от работодателя на сайтах поиска работы
Для тех соискателей, кто желает скрыть резюме от работодателя или, наоборот, сделать его видимым только определенным компаниям, на многих сайтах по поиску работы существует функция настройки видимости резюме. Как правило, такой функцией пользуются соискатели, которые ищут работу, еще не уволившись со старой.
Если вы находитесь как раз в такой ситуации (особенно если работаете в крупной компании), поиски нового места работы стоит вести с осторожностью, чтобы не «засветиться» перед текущим работодателем.
Если же вы не ищете работу, вы можете временно закрыть доступ к резюме, чтобы при возобновлении поиска не пришлось писать все с нуля.
Как правильно составить резюме: самое главное за 4 минуты
Как скрыть резюме на hh.ru
Чтобы скрыть свое резюме от работодателя на hh.ru , для начала вам необходимо зайти в раздел «Резюме/Мои резюме». Выберите резюме, которое желаете скрыть, и нажмите рядом с ним кнопку «Изменить видимость». В появившихся настройках приватности вы увидите несколько вариантов видимости резюме:
- Видно всему интернету
- Не видно никому
- Видно зарегистрированным компаниям
- Видно только перечисленным компаниям
- Видно зарегистрированным компаниям, кроме
- Видно по прямой ссылке
Если ваша цель — скрыть резюме от работодателя, вам рекомендованы такие варианты приватности:
Ваше резюме будет недоступно для всех, но вы сможете отправлять отклики на вакансии.
- «Видно только перечисленным компаниям»
В данном случае вы можете внести в список работодателей, которые будут иметь доступ к вашему резюме. Для остальных компаний оно будет недоступно.
- «Видно зарегистрированным компаниям, кроме»
При выборе данного варианта вы указываете в специальном окне те компании, от которых вы желаете скрыть резюме. Однако примите к сведению, что если у вашего начальства есть цель следить за резюме своих сотрудников, компания может быть зарегистрирована на сайте и под другим именем. Поэтому такой вариант несет в себе определенные риски.
Ваше резюме закрыто от всех и становится доступным только тем работодателям, кому вы лично отправили ссылку.
Как скрыть резюме на Суперджоб
На сайте Superjob.ru вы можете выбрать открытый, закрытый или выборочный вариант видимости резюме.
Резюме в открытом доступе может просматриваться всеми работодателями. Однако чтобы иметь доступ к вашей контактной информации, работодатель должен заплатить.
Резюме в закрытом доступе могут увидеть только те компании, на чьи вакансии вы откликнулись.
Выборочный доступ позволит вам составить список компаний, которые не смогут просматривать ваше резюме.
Если вы скрыли свое резюме, а потом откликнулись на какую-то вакансию, настройки автоматически изменятся и доступ к вашему резюме получит та компания, которой вы оставили отклик.
Как скрыть резюме от работодателя на сайтах поиска работы
Для тех соискателей, кто желает скрыть резюме от работодателя или, наоборот, сделать его видимым только определенным компаниям, на многих сайтах по поиску работы существует функция настройки видимости резюме. Как правило, такой функцией пользуются соискатели, которые ищут работу, еще не уволившись со старой.
Если вы находитесь как раз в такой ситуации (особенно если работаете в крупной компании), поиски нового места работы стоит вести с осторожностью, чтобы не «засветиться» перед текущим работодателем.
Если же вы не ищете работу, вы можете временно закрыть доступ к резюме, чтобы при возобновлении поиска не пришлось писать все с нуля.
Как правильно составить резюме: самое главное за 4 минуты
Как скрыть резюме на hh.ru
Чтобы скрыть свое резюме от работодателя на hh.ru , для начала вам необходимо зайти в раздел «Резюме/Мои резюме». Выберите резюме, которое желаете скрыть, и нажмите рядом с ним кнопку «Изменить видимость». В появившихся настройках приватности вы увидите несколько вариантов видимости резюме:
- Видно всему интернету
- Не видно никому
- Видно зарегистрированным компаниям
- Видно только перечисленным компаниям
- Видно зарегистрированным компаниям, кроме
- Видно по прямой ссылке
Если ваша цель — скрыть резюме от работодателя, вам рекомендованы такие варианты приватности:
Ваше резюме будет недоступно для всех, но вы сможете отправлять отклики на вакансии.
- «Видно только перечисленным компаниям»
В данном случае вы можете внести в список работодателей, которые будут иметь доступ к вашему резюме. Для остальных компаний оно будет недоступно.
- «Видно зарегистрированным компаниям, кроме»
При выборе данного варианта вы указываете в специальном окне те компании, от которых вы желаете скрыть резюме. Однако примите к сведению, что если у вашего начальства есть цель следить за резюме своих сотрудников, компания может быть зарегистрирована на сайте и под другим именем. Поэтому такой вариант несет в себе определенные риски.
Ваше резюме закрыто от всех и становится доступным только тем работодателям, кому вы лично отправили ссылку.
Как скрыть резюме на Суперджоб
На сайте Superjob.ru вы можете выбрать открытый, закрытый или выборочный вариант видимости резюме.
Резюме в открытом доступе может просматриваться всеми работодателями. Однако чтобы иметь доступ к вашей контактной информации, работодатель должен заплатить.
Резюме в закрытом доступе могут увидеть только те компании, на чьи вакансии вы откликнулись.
Выборочный доступ позволит вам составить список компаний, которые не смогут просматривать ваше резюме.
Если вы скрыли свое резюме, а потом откликнулись на какую-то вакансию, настройки автоматически изменятся и доступ к вашему резюме получит та компания, которой вы оставили отклик.
Как мы учим ИИ помогать находить сотрудников
Ведущий разработчик SuperJob Сергей Сайгушкин рассказывает о подготовке данных и обучении модели скоринга резюме, внедрении в продакшн, мониторинге метрик качества и АБ-тестировании функционала скоринга резюме.
Статья подготовлена по материалам доклада на РИТ 2017 «Ранжирование откликов соискателей с помощью машинного обучения».
Почему рекрутерам не хватает ИИ?
Есть два базовых способа работы рекрутера с SuperJob. Можно, используя внутренний поиск сервиса, отсматривать резюме и приглашать подходящих специалистов на собеседования. А можно разместить вакансию и работать с откликами специалистов.
15% вакансий на SuperJob получают более 100 откликов в сутки. Соискатели не всегда отправляют резюме, соответствующее должности. Поэтому эйчарам приходится тратить лишнее время, чтобы отобрать нужных кандидатов.
Например, вакансия «Ведущий PHP-разработчик» обязательно соберет отклики программиста «1С», технического писателя и даже директора по маркетингу. Это осложняет и замедляет подбор даже на одну позицию. А в работе у рекрутера одновременно бывает несколько десятков вакансий.
Мы разработали алгоритм скоринга резюме, который автоматически выделяет резюме, совсем не подходящие к вакансии. С помощью него мы определяем нерелевантные отклики и пессимизируем их в списке откликов в личном кабинете работодателя. Получаем задачу классификации на два класса:
+ подходящий
— неподходящий отклик
И даем возможность рекрутеру фильтровать отклики по данному признаку в личном кабинете.
Готовь данные летом, зимой, осенью и весной. И еще — летом
Подготовка данных для обучения — это один из важнейших этапов. От того, насколько тщательно подготовлен этот этап, зависит ваш успех. Мы обучаемся на событиях из личного кабинета рекрутера. Выборка включает в себя примерно 10—12 миллионов событий за последние 3 месяца.
В качестве меток классов используем события отклонения резюме и приглашения на собеседование. Если рекрутер сразу отклоняет резюме, без приглашения на собеседование, то скорее всего оно является нерелевантным. Соответственно, если рекрутер приглашает на собеседование (даже если впоследствии отклоняет), то отклик релевантен вакансии.
Для каждой вакансии проверяем распределение приглашений на собеседование и отклонений без рассмотрения и соответственно не обучаем модель на событиях вакансий, в которых количество отклонений существенно превышает количество приглашений. Или наоборот: там, где рекрутер приглашает всех подряд (или отклоняет всех подряд), такие вакансии мы также считаем выбросами.
Ось Х — количество приглашений на собеседование
Ось Y — количество вакансий
На графике видно, что рекрутеры в основном приглашают 5—6 соискателей на одну вакансию. По боксплоту можно оценить медиану приглашений, верхний и нижний квартиль и выявить выбросы. В нашем примере все вакансии с более чем 14 приглашениями на собеседование являются выбросами.
Ось Х — количество отклонений резюме
Ось Y — количество вакансий
В среднем для одной вакансии рекрутер отклоняет 8—9 соискателей. И все вакансии с количеством отклонений более 25 являются выбросами, что видно на боксплоте.
Кто не хочет работать головой — работает руками
После обучения модели для каждого рекрутера мы построили свою матрицу ошибок и обнаружили кластер работодателей, с которыми наша модель плохо справлялась. После анализа лога действий данных рекрутеров стало понятно, почему модель пессимизировала отклики соискателей, которых потом приглашали на собеседование. Данные рекрутеры массово приглашали на собеседование соискателей с резюме вообще из другой профессиональной области, не соответствующей вакансии, то есть приглашали всех подряд. То есть вакансия расходилась с резюме приглашенного кандидата практически полностью. Как ни странно, в основном это были клиенты с безлимитным тарифом. Они получают полный доступ к базе и берут количеством, а не качеством. Данных рекрутеров мы включили в черный список и не обучались на их действиях, т.к. паттерн поведения расходился с поставленной задачей.
Самый запоминающийся пример был с вакансией полицейского московского метрополитена. Рекрутер приглашал на собеседование кого угодно: продавцов, торговых представителей, актеров — и отклонял сотрудников национальной гвардии и полицейских. Возможно, он перепутал кнопки «отклонить» и «пригласить» в интерфейсе личного кабинета.
Наша модель использует более 170 признаков. Все признаки основаны на свойствах вакансии, резюме и их сочетаниях. В качестве примера можно привести зарплатную вилку вакансии, желаемую зарплату резюме и попадание зарплаты резюме в зарплатную вилку вакансии как сочетание признаков резюме и вакансии.
К категориальным признакам применяем бинарное кодирование (One-Hot Encoding). Требование вакансии о наличии определенного типа образования, категории водительских прав или знания одного из иностранных языков раскрывается в несколько бинарных фич для модели.
Работа с текстовыми признаками:
Текст очищаем от стоп-слов, пунктуации, лемматизируем. Из тестовых признаков формируем тематические группы:
- профессия вакансии и профессии из резюме;
- требования вакансии и ключевые навыки резюме;
- обязанности вакансии и обязанности с предыдущих мест работы соискателя.
Для каждой группы обучаем свой TF-IDF Vectorizer. Получаем векторайзеры, обученные на всем списке профессий, на всех требованиях вакансий совместно с навыками резюме и т.д. Например, у нас есть такая фича, как сходство профессии из вакансии с профессиями из опыта работы соискателя. Для каждой фразы получаем tf-idf вектор и вычисляем cosine similarity (косинус угла между векторами) c вектором другой фразы путем скалярного умножения векторов. Таким образом получаем меру сходства двух фраз.
В процессе генерации признаков мы консультировались с исследовательским центром SuperJob. Для рекрутеров был запущен опрос с целью выявить наиболее значимые признаки, по которым они принимают решение, пригласить кандидата или отклонить.
Результаты ожидаемы: рекрутеры смотрят на опыт работы, продолжительность работы на последнем месте, на среднюю продолжительность работы во всех компаниях. На то, является ли желаемая должность из резюме новой для кандидата, т.е. работал ли он по данной профессии раньше или нет. Мы учли данные опроса при составлении признаков для модели.
- средняя продолжительность работы на одном месте, в месяцах;
- количество месяцев работы на последнем месте;
- разница между требуемым опытом вакансии и опытом из резюме;
- попадание желаемой зарплаты резюме в зарплатную вилку вакансии;
- мера сходства между желаемой должностью и предыдущим местом работы;
- мера сходства между специальностью образования и требованиями вакансии;
- рейтинг (заполненнность) резюме.
When it doubt, use xgboost
Для решения задачи классификации мы используем реализацию градиентного бустинга xgboost.
После обучения модели мы смогли собрать статистику по значимым признакам. Среди значимых признаков ожидаемо оказались опыт работы, зарплатные фичи, попадание желаемой зарплаты из резюме в зарплатную вилку вакансии, мера сходства профессии вакансии и опыта работы соискателя, сходство требований вакансии и ключевых навыков резюме.
Также в топе признаков оказался возраст соискателя. Мы решили провести эксперимент и убрали данный признак, так как не хотели дискриминировать наших соискателей. В итоге в топ попала фича «количество лет с момента получения высшего образования», которая, очевидно, коррелирует с возрастом. Мы убрали и этот признак и заново обучили модель. После всех манипуляций с возрастом мы увидели, что метрики качества модели немного просели. В итоге решили вернуть возраст, т.к. в массовом подборе он действительно важен рекрутеру, на него обращают внимание. Но компенсируем соискателям в возрасте очки скоринга, если их отклик немного не дотягивает до релевантного, т.к. считаем, что именно возраст соискателя пессимизировал его резюме.
После нескольких итераций по обучению модели, подготовке фич мы получили модель с неплохими метриками качества.
ROC-кривая отражает зависимость доли верных положительный классификаций от доли ложных положительных классификаций. А площадь под roc-кривой можно интерпретировать следующим образом: auc-roc равен вероятности того, что случайно взятый объект 1 класса получит оценку выше, чем случайно взятый объект класса 0.
Мы не останавливаемся на данной модели и проводим новые эксперименты. Сейчас работаем над наполнением списка синонимов профессий, используя doc2vec, чтобы точнее определять факт того, что профессия из резюме соответствует профессии вакансии, и чтобы ведущий php-разработчик и senior php developer не были разными профессиями для модели. Также идут работы над тематическим моделированием с использованием библиотеки BigARTM для получения ключевых тем вакансии и резюме.
Также нам было необходимо, чтобы как можно меньше подходящих резюме оказалось в нерелевантных, т.е. мы должны минимизировать количество ошибок второго рода или ложно-отрицательных срабатываний. Для этого мы немного снизили значение threshold-вероятности принадлежности к релевантному классу. Таким образом снизили количество FN-ошибок. Но это имело и обратный эффект: возросло количество FP-ошибок.
На фреймворке Flask реализовали небольшой микросервис с REST API скоринга, упаковали его в docker контейнер и развернули на выделенном под эту задачу сервере. В контейнере запущен uWSGI веб сервер с мастер-процессом и 24 процессами-воркерами, по одному на ядро.
После того как пользователь откликается на сайте на вакансию, сообщение об этом факте попадает в очередь rabbitmq. Обработчик очереди получает сообщение, подготавливает данные, объект вакансии, объект резюме и вызывает endpoint api скоринга. Далее значение скоринга сохраняется в базу данных для последующей фильтрации откликов рекрутером в своем личном кабинете.
Сначала мы хотели реализовать онлайн-скоринг непосредственно при обращении к личному кабинету, но, оценив количество откликов на некоторые вакансии и итоговое время работы модели над одной парой резюме-вакансия, реализовали скоринг в асинхронном режиме.
Сам процесс скоринга занимает примерно 0,04—0,05 секунды. Таким образом, чтобы пересчитать значение скоринга для всех активных откликов на текущем железе, понадобится примерно 18—20 часов. С одной стороны, это большая цифра, с другой — мы пересчитываем скоринг достаточно редко, только при внедрении в продакшн новой модели. И с этой проблемой на данный момент можно как-то жить.
Самую большую нагрузку на сервис скоринга генерируют не соискатели, откликающиеся на вакансии, а наш сервис почтовых рассылок «подписки на резюме». Данный сервис срабатывает раз в сутки и рекомендует соискателей на вакансии рекрутеров. Естественно, результат работы сервиса мы также должны проскорить, чтобы советовать рекрутеру только релевантные отклики.
В итоге в пике работы мы обрабатываем 1000—1200 запросов в секунду. Если количество откликов, которые нужно проскорить, возрастет, то мы поставим рядом еще один сервер и горизонтально отмасштабируем сервис скоринга.
Мониторинг
Для того чтобы непрерывно оценивать метрики качества модели на актуальных данных личного кабинета, мы настроили задание мониторинга в jenkins. Скрипт несколько раз в сутки собирает данные из vertica по приглашениям и отклонениям, смотрит, как отработала модель на данных событиях, считает метрики и отправляет в систему мониторинга.
Также мы можем сравнивать метрики разных моделей скоринга на одних данных из личного кабинета. Мы не сразу внедряем новые модели, сначала скорим все отклики экспериментальной моделью, сохраняем значения скоринга в базу, а потом на графиках смотрим, лучше отрабатывают экспериментальные модели или хуже.
Графики делают нашу жизнь спокойнее, мы уверены, что качество скоринга не изменилось и все этапы работают в штатном режиме.
Реализация в личном кабинете
В списке откликов на определенную вакансию появились два таба, подходящие и неподходящие отклики. В качестве примера все та же вакансия ведущего программиста php в SuperJob. Резюме php-программиста, пусть и не ведущего или senior и резюме fullstack-разработчика со знанием php попало в подходящие отклики, а резюме программиста .net и руководителя it-отдела ожидаемо ушли в неподходящие.
АБ-тестирование
После реализации функционала скоринга мы провели ab-тест на рекрутерах.
Для теста мы выбрали следующие метрики:
- Конверсия присланных резюме в приглашенные — impact 8.3%
- Число приглашенных резюме — impact 6.7%
- Конверсия открытых вакансий в закрытые — impact 6.0%
- Число закрытых вакансий — impact 5.4%
- Количество дней до закрытия вакансий — impact 7.7%
Данный тест мы проводили с уровнем значимости в 5%, это означает, что существует 5% вероятность допустить ошибку первого рода или ложноположительное срабатывание.
После ab-тестирования собрали обратную связь от рекрутеров, которые попали в вариант с функционалом скоринга. Обратная связь также была положительной. Они пользуются функционалом, тратят меньше времени на массовый подбор.
Парсер резюме Superjob.ru
Парсер Superjob.ru – это настройка Datacol, которая автоматически получает резюме с сайта superjob.ru.
С помощью этой настройки вы сможете:
- Парсер Superjob.ru поможет быстро найти сотрудников;
- Сохранить собранную информацию в удобном виде для дальнейшего редактирования или экспорта на сайт;
- Автоматизировать работу отбора сотрудников.
Полученная в процессе парсинга информация сохраняется в XLSX файл для последующего открытия в Excel:
кликните на изображении для увеличения
Проверить работу парсера Superjob можно бесплатно в демо-версии программы.
Основные преимущества парсера Superjob.ru на базе Datacol это:
- Возможность донастройки парсера Суперджоб конкретно под ваши нужды (вами либо нами на платной основе).
- Возможность переводить, уникализировать, дополнительно обработать собранные данные с помощью плагинов а также загружать их в различные форматы и CMS.
- Возможность цикличного запуска кампаний. Когда результаты выполнения первой задачи парсинга будут входными данными для второй задачи по сбору данных. Подробнее смотрите здесь.
Алгоритм работы парсера Superjob
Сайт Superjob — является лидером рынка онлайн-рекрутмента России. На сайте было опубликовано более 17 миллионов резюме. Ежедневно сайт Superjob.ru посещают более 800 тысяч человек. Именно поэтому автоматический сбор резюме Superjob пользуется большой популярностью. Справится с задачей поможет парсер Суперджоб, реализованный в Datacol.
Парсер Superjob.ru производит сбор следующей информации: ФИО, телефон, возраст, дата рождения, город, должность, образование, зарплату, пол и ссылку на резюме. Собранные данные по умолчанию сохраняются в Excel файл, но вы можете настроить экспорт в любой другой необходимый формат. Вы сможете получать самые актуальные резюме от соискателей, настроив мониторинг резюме по нужной тематике.
Тестирование парсинга Superjob
Чтобы протестировать работу парсера Superjob.ru:
Шаг 1. Установите демо-версию программы Datacol. Демо-версия программы имеет все возможности платной, но сохраняет только первые 25 результатов парсинга.
Шаг 2. В дереве кампаний присутствует кампания ad-parsers/superjob.ru.par. Выберите ее и нажмите кнопку Запуск (Play). Перед запуском вы можете отредактировать Входные данные. Так вы сможете задать ссылки на резюме, которые вы хотите отпарсить.
кликните на изображении для увеличения
Шаг 3. Дождитесь появления результатов работы парсера Суперджоб.ру. После появления результатов можно принудительно остановить парсинг (нажав кнопку Стоп).
кликните на изображении для увеличения
Шаг 4. После окончания/принудительной остановки парсера в папке Мои документы можно найти файл superjob.ru.xlsx:
кликните на изображении для увеличения
Если сайт-источник забанит ваш IP адрес (обычно в результате этого перестают находиться новые результаты), задействуйте прокси.
Обработка и экспорт данных
Способы обработки данных, собранных парсером Superjob.ru:
Форматы экспорта данных, собранных парсером Superjob.ru:
Загрузка в CMS/магазин/сайт»
Если у вас не получается самостоятельно загрузить собранные данные в свою CMS/интернет магазин/сайт, оставьте заявку и мы постараемся Вам помочь.
Задать вопрос
Если у вас возник вопрос по парсингу Superjob:
Пожалуйста ознакомьтесь с базовыми справочными материалами. После ознакомления воспользуйтесь нашей поддержкой на форуме. Поддержка отвечает с понедельника по пятницу.
Все условия приобретения программы приведены здесь.
После поступления оплаты за лицензию на адрес электронной почты, указанный при покупке, Вы получите код активации программы и информацию о сроках действия Вашей лицензии. Инструкцию по активации можно посмотреть здесь.
Вы можете приобрести Datacol и в рамках него настроить необходимую компанию (либо воспользоваться базовой настройкой, если таковая имеется). Перед покупкой вы можете описать нам свою задачу, чтобы мы могли ознакомиться с ней и подтвердить что она реализуема в рамках Datacol. Задачу необходимо описать СТРОГО по данному плану — обязательно со скриншотами!