2377 вакансий за девять дней — столько объявлений автор под ником Ahtuhka прогнал через собственную систему автооткликов с ИИ-разбором. В материале на Habr итог выглядит как холодный душ для всех, кто верит фильтрам hh.ru: формальное совпадение с параметрами вакансии ещё ничего не говорит о шансах на внятное предложение о работе.
Для русскоязычной IT-аудитории вывод практический: если вы ищете работу или людей через hh.ru, фильтр по удалёнке и поле зарплаты нельзя считать надёжными данными без ручной проверки.
Эксперимент на hh.ru, а не про весь рынок
Автор собирал выборку не ради академической статистики, а ради собственной воронки поиска. Инструмент он сделал локально: приложение на Electron открывает вакансии в браузере на машине пользователя, параллельно прогоняет тексты через языковые модели и складывает результаты в SQLite. До этого у него были Excel, Word и автокликеры; нынешняя версия просто делает тот же тяжёлый ручной труд быстрее и аккуратнее.
Оговорка здесь важнее громких выводов. Это не срез всего рынка труда, а данные одной площадки, одного профиля кандидата и жёстких фильтров по формату работы, доходу, нагрузке и личным ограничениям. Но именно такие узкие замеры обычно лучше всего показывают, где у площадки ломается структура данных.
Фильтр удалёнки даёт слишком много ложных срабатываний
В удалённой выдаче система разобрала 894 вакансии. По данным автора, лишь около 63% из них были чистой удалёнкой, ещё 22% допускали несколько форматов, а примерно 13% вообще вели к разъездной, гибридной или офисной работе. Иначе говоря, каждая восьмая карточка в фильтре «удалённо» жила там довольно вольной жизнью.
С деньгами картина не лучше. В 53% вакансий зарплату не указали вовсе; гарантированный оклад был назван только в 338 случаях, а в 40 из них он равнялся нулю — кандидатам предлагали процент без базы. Формальные обязательные проверки прошли 406 вакансий, но действительно стоящими для отклика ИИ посчитал всего восемь. Это меньше 1% всей удалённой выборки.
Офис в регионах выглядит богаче, но не по профилю
4 августа автор расширил поиск на офисные вакансии в Казани, Альметьевске, Грозном и Махачкале с порогом от 150 000 рублей гарантированного оклада. За одну ночь система обработала 1483 объявления. На бумаге картина выглядела бодрее удалёнки: медианный гарантированный оклад среди вакансий с указанной базой составил 170 000 рублей против 130 000 рублей в удалённой выдаче, а доля предложений от 150 000 рублей достигла 69% против 49%.
Но дальше цифры быстро возвращают на землю. Все фильтры прошли только 37 вакансий, или 2,5% выборки. Среди 216 объявлений, где гарантированный оклад был указан и превышал порог, 197 оказались профессионально нерелевантными. В сухом остатке автор насчитал лишь девять вакансий, где совпали и деньги, и профиль.
Дубли и пустые поля ломают воронку сильнее, чем кажется
В отдельном разборе сырых результатов 258 из 1716 карточек оказались дублями. При этом проблема не сводится к паре особенно шумных работодателей: в базе автора было 1943 вакансии от 1300 компаний, и 76% работодателей дали только по одной карточке. То есть выдачу портит не чья-то монополия на спам, а слабая структура самих объявлений.
По рабочей воронке из 2006 вакансий, взятых в обработку, до отклика дошли 183, ответов было 78, а признаков реального интереса — 20. Конверсия из отклика в ответ составила 43%, медианное время ответа — 14 часов, 64% ответов пришли в первые сутки. По наблюдению автора, вакансии без указанной зарплаты отвечали даже чаще, чем объявления с прозрачной вилкой. Рынок, как выяснилось, любит разговорчивость, но это ещё не равно качеству предложения.
Значение для рынка
Проблема не только в фильтрах, но и в том, как площадки хранят данные. Ноль и отсутствие данных — разные вещи; если платформа смешивает их в одном поле, аналитика начинает врать. Автор приводит показательный пример: в офисном поиске 327 вакансий отсеялись не из-за низкого оклада, а потому что оклад вообще не был указан. А среди 529 объявлений, где были названы и база, и верхняя планка дохода, медианное отношение верхней планки к гарантии составило 2 к 1, у верхней четверти — 4 к 1, у верхних 10% — 6 к 1. У каждой десятой такой вакансии гарантия была нулевой. Иначе говоря, рынок нередко продаёт не оклад, а билет в KPI-лотерею.
Для российских разработчиков, менеджеров продукта, основателей компаний и HR-команд вывод простой: пока площадки не наведут порядок в полях «формат работы», «гарантированный оклад» и «тип роли», соискатели будут всё чаще строить собственные SQLite-базы и проверять рынок поверх языковых моделей, а не поверх красивых фильтров.
Следующий раунд здесь очевиден: либо агрегаторы учатся нормально размечать вакансии, либо частные инструменты соискателей начнут описывать рынок точнее, чем сами площадки.