
Как мы понимаем, что вакансия ещё жива
Мы не знаем, закрыта ли вакансия, и не притворяемся. Вместо этого считаем уверенность от 0 до 1 и показываем причины словами. Разбираем формулу — и почему на текущем…
Как устроен сайт
27 сентября 2026 · 4 мин чтения

Вакансия попадает к нам не из одного места. Один и тот же текст может лежать на джоб-борде, в телеграм-канале, на карьерной странице компании и в государственной базе — и если ничего с этим не делать, лента превращается в четыре одинаковые строки вместо одной. Как мы приводим объявления к одному виду, коротко написано на странице методики; здесь — только про третий её шаг, склейку.
Внизу страницы вакансии есть список «Источники». Когда в нём больше одной строки, под списком появляется наша пометка: дубли этой вакансии объединены в одну карточку. На 27 сентября в ленте 270 карточек, и такая пометка стоит на 29 из них.
Раскладывается это так: у 25 карточек по два источника, у трёх — по три, у одной — четыре. Значит, 63 найденных объявления стали 29 карточками, и 34 записи не превратились в отдельные строки ленты.
У 14 из этих 29 рядом с пометкой стоит ещё и число — от 85 до 100 процентов. Это наша уверенность в склейке, то есть наша оценка, а не данные работодателя. Сами ссылки остаются все: любую копию можно открыть и сверить.
Пара объявлений вообще не рассматривается, пока не совпало что-то одно из двух.
Первое — компания. Если работодатель у объявлений разный, это почти наверняка разная работа.
Второе — дословный перепост. Мы считаем отпечаток по первым сорока значимым словам описания, и если он совпал, объявления сравниваются даже без названия компании. Это правило существует ровно потому, что в телеграм-каналах работодателя часто не называют вовсе: пока сверялись только компании, один и тот же пост жил в ленте тремя карточками — у всех трёх компания неизвестна, а неизвестное с неизвестным не совпадает.
Живые числа подтверждают, что якорь нужен именно такой: из 29 склеенных карточек в 20 хотя бы одна копия пришла из телеграм-канала, а в 13 случаях склеены два канала между собой. Ещё в четырёх случаях это два джоб-борда, в трёх — канал и объявление, которое компания разместила у нас напрямую.
После якоря считаются признаки, и каждый двигает число в свою сторону.
Объединяем с 72 процентов. Всё, что набрало от 50 до 72, попадает в очередь на ручную проверку, а в ленте остаётся двумя карточками. Правило простое: склеить две разные работы хуже, чем показать одну дважды. В первом случае читатель теряет вакансию и никогда об этом не узнает, во втором — просто видит лишнюю строку.
Из группы берётся самая содержательная запись: там, где длиннее описание, названа сумма, указан город, перечислены навыки и уровень. Она и становится карточкой, остальные копии остаются ссылками в списке источников.
Дата публикации берётся самая ранняя из всех копий — работа началась тогда, когда её впервые опубликовали, а не когда мы нашли последнюю перепечатку. Дата подтверждения, наоборот, самая поздняя: она отвечает на вопрос, когда источник видел вакансию в последний раз. И внутренний номер вакансии сохраняется, если хотя бы один источник уже знаком: иначе появление новой копии обрывало бы историю изменений зарплаты и уровня.

Мы не знаем, закрыта ли вакансия, и не притворяемся. Вместо этого считаем уверенность от 0 до 1 и показываем причины словами. Разбираем формулу — и почему на текущем…

Оценка качества описания есть в коде, но на текущих данных почти не показывается. Объясняем, чего не хватает, и почему мы не ставим цифру «на глаз».

На 26 сентября дизайнеров нанимают 206 компаний, и только у семнадцати из них открыто больше одной вакансии. От этого зависит, придёте вы в команду или окажетесь…