Привет, Хабр! Это моя вторая статья, посвященная нашему проекту.
Мы создаем продукт, который, как мы верим, изменит рынок труда в Рунете — AI-ассистента для поиска работы, забирающего на себя всю рутину. А рутины, как выяснилось, очень много.
В этой статье я постараюсь открыть больше внутрянки про техническую часть проекта и продолжу рассказывать про наши факапы (а куда без них?:)
Цифры и факты
По данным, которые нам предоставил коллега — ChatGPT, в России около 20-40% людей хотят сменить работу. Но шокирует другое: только 10% из них ведут активный поиск. Остальные 90% — это 13+ миллионов человек, которые просто боятся, не уверены в себе или не хотят погружаться в бюрократический ад: обновлять резюме, писать сотни сопроводительных, отвечать рекрутерам и готовиться к собеседованиям.
Мы задались вопросом: а что, если весь этот процесс можно автоматизировать?
Что если будет продукт, который:
Сам создаст и улучшит ваше резюме.
Сам будет массово откликаться на релевантные вакансии и писать уникальные сопроводительные письма.
Сам будет готовить к интервью с помощью персонального тренажера.
Сам будет ставить собеседования в календарь, оставляя пользователю только прийти и блеснуть.
Именно так родилась Софи. И сегодня я хочу заглянуть под капот и показать, как она работает и какой отклик мы получили от юзеров.
Реализация идеи. Парсер
Первое, что мы разберем сегодня, это парсер - важнейшая составляющая работы нашего продукта. На одном из синков наш бэкендерер Святослав показывал всю внутряку, которую можно описать следующими тезисами:
Прогнозирование. Первым делом система определяет примерное время окончания парсинга, чтобы пользователь понимал, сколько ждать.
Формирование запроса.На основе данных пользователя (например, «middle python») формируется точный запрос к api hh.ru.
«Человеческий» сбор ID. Это ключевой момент. Парсер не просто дергает API, а собирает ID всех вакансий, листая страницы с задержками, как это сделал бы живой человек. Это помогает избегать банов и выглядеть естественнее в глазах платформы.
Детальный сбор и фильтрация. Для каждого найденного ID делается отдельный запрос за полными данными вакансии. Эти данные проходят через ряд фильтров (локация, стек технологий, уровень зарплат и т. д.).
Запись в БД. Отфильтрованные и чистые данные отправляются в нашу базу данных.
Фидбэк. В конце парсер показывает сводку: сколько вакансий собрано, сколько записано (с разбивкой по грейдам) и общее время работы.
Этот отлаженный процесс — фундамент, на котором строится главная функция Софи: массовый и релевантный отклик.

Топ сложностей, которые у нас возникли
Как ни странно, почти каждая фича ассистента вызвала ряд проблем при разработке) Мы составили вот такой топ, от сложных проблем к более простым:
Улучшение резюме.
Ответы на вопросы рекрутеров.
Написание сопроводительных писем.
Система откликов.
Тренажер собеседований.
Как я писал раннее, продукт работает через API hh.ru. Это сильно влияло на систему откликов и сопроводов, иногда в них бывали нехилые аномалии. Например, Софи не подставляла почту юзера, а оставляла графу «указать при необходимости».

Тем не менее, основная сложность была не в этом. Сложнее всего дался именно первый пункт — улучшение резюме.
Алгоритм работы с резюме у нас такой:
Шаг 1: Исходные данные — тянем и анализируем
Всё начинается с текущего резюме на hh.ru. Мы подтягиваем его через API. Здесь работает простое правило: чем больше исходной информации, тем лучше. Пустое или слишком краткое резюме — это чистый холст, на котором даже самой продвинутой ИИ сложно нарисовать шедевр. Нам нужна база: проекты, технологии, периоды работы. Это сырье для последующей обработки.
Шаг 2: Глубинный опрос — добываем контекст
Это самый важный и неочевидный для многих этап. На основе исходного резюме наша ИИ генерирует персонализированные вопросы. Её задача — выйти за рамки формальных обязанностей и докопаться до сути:
Не «Что вы делали?», а «Какой конкретно результат принесла ваша работа?»
Не «Какие задачи решали?», а «Какую проблему вы закрыли и как это измеримо?»

Именно так работают лучшие карьерные консультанты. Они не переписывают текст, а сначала задают десятки уточняющих вопросов, чтобы собрать содержательную базу для дальнейшей упаковки.
Шаг 3: Примеры для вдохновения
Тут Софи делает ход конём: она генерирует примеры ответов на свои же вопросы. Человек видит не абстрактную инструкцию, а конкретный вариант, как можно описать свой опыт. Это не шаблон для копирования, а ориентир, который можно отредактировать под себя. Это снимает психологический барьер и значительно ускоряет процесс.
Шаг 4: Упаковка и моментальное обновление
Когда юзер ответил на вопросы, его развернутые описания попадают в дообученную нами языковую модель. Её задача — отбросить воду, структурировать мысли и переформулировать ваш опыт в сильные, лаконичные формулировки, насыщенные результатами и цифрами.
Дальше остается только нажать кнопку «Сохранить» — и обновленное, мощное резюме автоматически публикуется на hh.
Звучит все, конечно, здорово. Не так ли?) Но и здесь нас ожидали сюрпризы..
Во-первых, когда мы создали обновление для составление резюме должны были закинуть его на прод, hh поменял апишку, которая отвечает за обновление и редактуру резюме.
Мы написали в саппорт о несоответствии документации с тем, что у нас на выходе, а в ответ получили:
«Мы знаем, что у нас неправильная документация сейчас. Как исправим, так и сообщим»
Было очень весело)
Вторая загвоздка была в том, что стоящие в основе продукта нейросети — как талантливые, но несмышленые дети. Они могут привирать, додумывать несуществующий опыт или некорректно формулировать задачи. Вариантов, куда ее может понести — тысячи. И мы стараемся учесть хотя бы 90% из них.
Изначально Софи задавала кандидатам странные вопросы, в которых мы сами не всегда могли уловить логику. Мы добавили десятки примеров «правильных» вопросов для разных сценариев и ситуация значительно улучшилась.
Такой итеративный процесс, постоянное тестирование и доработка — наша ежедневная рутина.
Тренажер собеседований: готовимся не к Leetcode, а к реальности
Одна из наших ключевых фич — это тренажер собеседований. Мы ушли от парадигмы «решения задач на литкоде». Собеседование — это не только код. Это и речь, уверенность, взгляд, умение рассуждать под давлением.

Как он работает:
Вставляем описание вакансии, на которую нас пригласили.
Софи на его основе генерирует 15 уникальных вопросов.
Записываем ответы на камеру (или только голосом, для тех, кто не любит светиться) с минимальным временем на подготовку.
ИИ анализирует ответы, дает обратную связь по каждому: плюсы, минусы, рекомендации.
В конце вы получаете общую оценку и «резюме собеседования» — сводку по зонам роста.
Чтобы мотивировать пользователей приходить подготовленными, мы ввели систему допуска. Софи не отправит юзера на реальное собеседование, пока он не пройдет небольшой квиз по компании. Это win-win: компании получают заинтересованных кандидатов, а пользователь увеличивает свои шансы на успех.

Релиз, фидбэк и первые результаты
До релиза оставалось меньше месяца, и работа кипела днем и ночью. Мы запускали закрытую бета-версию, собирали фидбэк и буквально жили в режиме «запустили-зафиксили-улучшили».
Что удалось сделать перед релизом:
Переехали с Cloudflare, решив проблемы с доступом.
Научили Софи учитывать желаемые города и удаленку, а также точнее попадать в стек технологий (рост релевантных откликов с 60% до 90%).
Научили сопроводительные письма склоняться по родам и учитывать только релевантный опыт, без выдумок.
Увеличили глубину опросника перед собеседованием с 4 до 8 вопросов.
В общем и целом, мы успели исправить около 70% багов, которые получили после отзывов юзеров с бета-теста.
Итоги первой недели после релиза:
У 45 пользователей за 7 дней система сделала 5679 откликов. Из них было получено 37 приглашений на интервью (в том числе предложений пообщаться в Telegram). В среднем это 126 откликов и 0.82 интервью на пользователя.
Тогда для нас это был космический результат.
И самое важное для нас - после исправления ошибок и доработок начальной версии, пользователи стали лучше отзываться о продукте.

Как-то так прошел наш первый запуск:) В результате более 50% человек не отменили подписку после триала, что для нас было очень и очень ценно.
Как я уже писал, наша миссия — не просто помочь найти работу. Наша миссия — вернуть 13 миллионов пассивных соискателей в игровое поле, давая им возможность меняться к лучшему без страха и рутины. Пока что с помощью Софи работу нашли 10 человек из 13 000 000. Но мы только начинаем.
Спасибо, что дочитали до конца! Пишите в комментариях, что еще было бы интересно увиде��ь/узнать про наш проект.
Комментарии (4)
cosmichorror
03.10.2025 12:35Короче - Спам платформа. Теперь нормальным людям откликов вообще - не дождаться.
AlexLeonov
03.10.2025 12:35>> 2. Сам будет массово откликаться на релевантные вакансии и писать уникальные сопроводительные письма.
Отлично. Давайте доломаем механики найма окончательно.
Пусть теперь в сутки на вакансию QA Middle будет благодаря вам не 500 откликов, а 5000. И работодатели окончательно плюнут на найм и уйдут в аутстафф.
Viacheslav01
03.10.2025 12:35Ну собственно будущее наступило, со стороны найма АИ, со стороны сотрудника АИ, они то между собой как нибудь договорятся, а что делать кожаным в этом мире, большой вопрос )
lsoul
По 18 откликов в день у одного соискателя. Как то почти уже спам рассылка своего резюме.