Как я сократил поиск работы с часа до 5 минут в день: Python + AI против рутины на HeadHunter

Поиск работы — это, по сути, вторая работа. Если вы живете в крупном городе и ищете позицию в сфере IT (например, Аналитик данных или Разработчик), то утро начинается одинаково: заходим на HH, видим +200 новых вакансий, вздыхаем и начинаем скроллить.

Я заметил, что трачу больше часа в день на механическую работу:

1. Открываю вакансию.

2. Сканирую глазами описание, требования и обязанности.

3. Понимаю, что вакансия не подходит.

4. Закрываю.

Как начинающий специалист с образованием в маркетинге, я привык оптимизировать воронки и снижать операционные действия. Как человек с техническим бэкграундом, я решил, что нейросети справятся с фильтрацией лучше меня.

Так появился мой pet-проект — AI-парсер вакансий, который экономит мне 90% времени на поиск. Рассказываю, как это работает и как вы можете повторить этот опыт.

Проблема: Стандартные фильтры не работают

У HeadHunter есть язык поисковых запросов и автопоиск. Но они работают по ключевым словам.

  • Если исключить слово «Senior», можно пропустить вакансию «Middle+ с перспективой роста».
  • Если искать «Frontend», вам покажут и веб-студии, и банки, и крипто-стартапы.

Но наши карьерные цели часто лежат в плоскости смыслов, а не ключевиков. Мне нужно было решение, которое понимает контекст, например: «Я ищу работу в FinTech, мне важен такой-то стек, и я не хочу в аутсорс».

Решение: Python + API + LLM

Я написал скрипт (работает в Google Colab), который делает всю грязную работу за меня. Процесс выглядит так:

1. Сбор данных через API. Скрипт обращается к открытому API HeadHunter. Я скармливаю ему свои поисковые ссылки (как обычные URL из браузера). Он выгружает все новые вакансии.

Блок, где можно указать ссылки, по которым вы ищете новые вакансии
Блок, где можно указать ссылки, по которым вы ищете новые вакансии
Блок, в котором вы рассказваете о себе и о целях поиска работы
Блок, в котором вы рассказваете о себе и о целях поиска работы

2. Дедупликация и База Данных. Чтобы не анализировать одно и то же дважды, скрипт ведет простую базу данных (Excel-файл). При запуске он сравнивает ID новых вакансий с теми, что уже были просмотрены. Если вакансия старая — она игнорируется. Если новая — идет в обработку. Это позволяет запускать парсер хоть каждый час, получая только свежие апдейты.

3. Анализ с помощью ИИ (Самое интересное). Дальше в дело вступает нейросеть (можно подключить Gemini, GPT или использовать Perplexity вручную). Я написал подробный системный промпт, в котором:

  • Загружаю своё резюме и описание идеальной работы (Сфера, Стек, Цель).
  • Даю инструкцию: «Оцени вакансию по шкале от 1 до 5, где 5 — идеальное совпадение».
  • Прошу дать краткое обоснование оценки.
Вы копируете промпт в нейросеть, которую используете для анализа
Вы копируете промпт в нейросеть, которую используете для анализа

Технический нюанс: Нейросети имеют ограничение на контекст. Если закинуть 1000 вакансий разом, качество анализа упадет («галлюцинации»). Поэтому мой скрипт разбивает вакансии на «батчи» по 100 штук. Это золотая середина для качественного анализа.

В этом блоке указываем, сколько вакансий максимум в одном промпте
В этом блоке указываем, сколько вакансий максимум в одном промпте
В этом блоке формируются промпты для копирования, так как мы выгрузили меньше 100 вакансий, промпт у нас один
В этом блоке формируются промпты для копирования, так как мы выгрузили меньше 100 вакансий, промпт у нас один

4. Двойная фильтрация. Я заметил особенность: иногда нейросеть завышает оценки при первом прогоне. Поэтому я реализовал двухэтапную систему:

1. Первичный отсев: AI смотрит на сырые данные и отсекает явный мусор (оценки 1–3).

2. Финальный промпт: Оставшиеся кандидаты (оценки 4–5) прогоняются через финальный анализ для формирования чистового списка.

Результат: Утро начинается с кофе, а не со скроллинга

На выходе я получаю не бесконечную ленту, а короткий список (обычно 3–6 позиций из сотен), где сразу видно:

  • Название компании.
  • Почему мне это подходит (комментарий ИИ).
  • Кликабельная ссылка.
В результате нейросеть дает список вакансий с кликабельными ссылками для анализа
В результате нейросеть дает список вакансий с кликабельными ссылками для анализа

Итоги в цифрах (метрики):

  • Time to Value: Сократил время ежедневного поиска с ~60 минут до 5–10 минут.
  • Conversion Rate: Релевантность вакансий, которые я открываю, выросла в разы. Я не трачу ментальный ресурс на чтение неподходящих описаний.
  • Scalability: Инструмент легко адаптировать под любую роль — хоть для юриста, хоть для маркетолога. Нужно просто поменять описание «О себе» в промпте.

Этот проект показал мне, что даже в таких рутинных процессах, как поиск работы, есть место для продуктового подхода и автоматизации. Вместо того чтобы играть по правилам платформы, можно создать свой инструмент, который заставит платформу работать на тебя.

Если вам интересна тема автоматизации, аналитики с помощью IT инструментов – заглядывайте в мой Telegram-канал. Там я делюсь своими проектами, а если вас заинтересовал умный парсер вакансий – напишите мне в личные сообщения в Telegram

Начать дискуссию