Продолжение поста «Секреты вашей профессии, о которых лучше не говорить»

Как и обещал, вторая часть про “hh.ru изнутри”. В этом посте поговорим о том, как грамотно работать с поиском hh.ru и как не испортить самому себе рекомендации.

1. Про рекомендации стоит понять одну простую вещь: их никто не составляет вручную. Вакансии вам рекомендуют ML-модели (модели машинного обучения — Machine Learning) на основе вашего резюме, предыдущего опыта работы, вашего поведения на сайте: поисковых запросов, кликов по вакансиям, откликов и так далее. ML-модели учатся обобщать поведение похожих на вас пользователей и если вы будете выделяться на их фоне, то модели могут довольно сильно ошибаться. К тому же в ML существует проблема баланса между точностью и полнотой. Если стремиться к 100% точности, то мы будем находить очень мало подходящих вакансий. И, соответственно, наоборот, стремясь подобрать достаточное количество подходящих вакансий, мы снижаем точность рекомендаций. Добавьте к этому, что для повышения качества моделей, нужно довольно много вычислительных ресурсов. А еще вспомните примеры рекомендаций видео и музыки из стриминговых сервисов, там тоже не всегда всё релевантно, но в среднем пользователи на это обращают меньше внимания, чем на рекомендации вакансий. Для всей этой ситуации существует проверочный вопрос: вот если бы это был не робот, а человек, он бы смог по моему резюме и моим действиям на сайте разобраться, чего я хочу?

2. Если вы нашли баг на сайте — не стесняйтесь писать в поддержку. На сайте это кнопка “Помощь” в футере, а в мобильном приложении жмите “Профиль”, затем справа вверху гамбургер-меню и там найдете заветную “Помощь”. Все жалобы пользователей рассматриваются, у нас в команде даже есть еженедельный дежурный, который внимательно за этим следит. И при некорректной работе сайта дежурный старается либо сам починить поломку, либо найти виновника. Мелкие баги обычно фиксятся в течение пары рабочих дней.

3. Если вам, например, нужно точное совпадение при запросе “менеджер по оптовым продажам” или вы готовы работать и C#-разработчиком, и Java-разработчиком — пользуйтесь языком поисковых запросов. Мы умеем отслеживать, что запрос его использует и “развязываем руки” пользователю, не включая различные механики, влияющие на поисковую выдачу.

4. Интересный лайфхак специально для адептов Лиги лени: ищите вакансию в другом регионе, но лень высматривать его в фильтрах? Вбивайте название региона прямо в запросе, например, “программист казань”. “Казань” уйдет в фильтр по региону и поиск hh покажет вам вакансии программистов именно в этом городе.

5. Когда я приходил в hh, на сайте уже работало 5 разных стеков ML-моделей. Недавно появился еще и шестой. Они отвечают за разные поисковые выдачи и рекомендации. Практически все они используются при сортировке “по соответствию”. Если выберете другой тип сортировки, например, по дате изменения, по возрастанию или убыванию зарплаты, то включится “глупый” — обычный не ML-ный поиск, который работает хуже “умного”. Влияет это главным образом на ранжирование документов в поисковой выдаче. При ML-поиске, кроме самого запроса, учитываются еще и многие признаки, которые мы берем из ваших резюме и поведения на сайте, тогда как при обычном поиске ранжирование происходит более топорно. Как пример: вы — менеджер по продажам автомобилей и хотите продавать только их, а ваши резюме и предыдущий опыт работы целиком посвящены только этому. В основном вы смотрите вакансии менеджеров по продажам авто. Тогда при запросе “менеджер по продажам” ML-поиск будет стараться первыми показать те вакансии, которые связаны именно с продажами авто. В то время как обычный поиск покажет вперемешку менеджеров по продажам в разных сферах. Подробнее про типы поиска в hh.ru можно почитать тут.

6. Есть еще один важный нюанс. Если вы пытаетесь найти на hh работу по редкой профессии (вообще или в вашем регионе), а потом вам вдруг начинают предлагать вакансии кассиров в Пятерочке или менеджеров по продажам, а при этом вы не портили себе рекомендации (смотри пункт 1) — знайте, так hh всеми силами старается помочь вам найти хоть какую-то работу. Жизненные обстоятельства бывают разными, есть ситуации, когда работы по профессии в регионе нет, а кормить семью надо. Такие случаи мы тоже стараемся обрабатывать. Рекомендации учитывают не только куда вы откликнетесь, но и куда вас, вероятно, пригласят. Конечно, можно попытаться выучить C++ за 21 день, в резюме написать, что рассматриваете работу только тимлидом и негодовать, почему ML предлагает вам исключительно вакансии стажеров и сотрудников техподдержки. Я, конечно, утрирую, но это недалеко от истины. Система старается заботиться о времени всех участников найма. Если же вы всё-таки хотите, чтобы система не умничала — используйте поиск из пункта 3, это отключит вам поддержку при поисковой выдаче, и вы сможете поискать ровно то, что хотите.

P.S. в ближайшее время также планирую написать про свой опыт перехода из инженеров в IT. Если есть еще темы, о которых вам было бы интересно прочитать от бывшего инженера-электронщика-испытателя и нынешнего Java & Python Backend разработчика - пишите в комментариях и я постараюсь учесть ваши пожелания в будущих постах.