HR-менеджер строительной компании (50–200 сотрудников) получал 20–50 откликов на вакансии в день по почте (Gmail). Каждое резюме нужно было:
Вручную скачать PDF из письма.
Прочитать и вытащить ФИО, опыт, навыки, желаемую зарплату.
Открыть Google Sheets и вручную заполнить таблицу с данными кандидата.
Сравнить с описанием вакансии и вручную написать письмо (приглашение или отказ).
Пометить письмо в Gmail нужной меткой для архива.
Цифры боли:
На одно резюме уходит 3–5 минут × 30 откликов = 1,5–2,5 часа в день.
Много ошибок: забывают ответить, потеряют резюме, опечатки в письмах.
Теряют лидов: хорошие кандидаты получают ответ через 2 дня и уходят к конкуренту.
Цель:
Полностью автоматизировать первичный скрининг и разработать базу кандидатов, чтобы HR-менеджер тратил время только на интервью хороших кандидатов, а не на парсинг резюме.
Архитектура:
Разработал на стеке Gmail → n8n → OpenAI GPT-4o → Google Sheets → Auto-responder (Gmail).
Пошаговый процесс:
Триггер Gmail: n8n слушает новые письма с вложениями (attachments) в папке Inbox каждую минуту через Gmail Trigger с OAuth2-авторизацией.
Извлечение данных из PDF: используется модуль Extract from File + Information Extractor (LLM-узел с GPT-4o-mini), который парсит PDF-резюме и вытаскивает структурированные данные:
ФИО, возраст, опыт работы
Ключевые навыки (hard skills)
Мягкие навыки (soft skills)
Желаемая зарплата
Контакты
JSON-ответ с единой структурой
Проверка дубликатов: перед обработкой система проверяет Google Sheets на наличие этого кандидата по email (Get rows in sheet), чтобы не обрабатывать одного человека дважды.
Matching с вакансиями: AI Agent (GPT-4o) получает:
Данные кандидата (из PDF)
Список открытых вакансий (из Google Sheets)
Кастомный промпт с критериями оценки
Модель выполняет семантический поиск и выдает JSON с результатом:
json
{
"matching_vacancies": [
{"vacancy": "Прораб", "score": 92, "reason": "10 лет опыта, навыки совпадают"},
{"vacancy": "Инженер ПТО", "score": 78, "reason": "Есть опыт, нужно подучить"}
],
"recommendation": "Пригласить на собеседование",
"risk_factors": ["Желаемая зарплата выше бюджета на 15%"]
}
Сохранение в таблицу: узел Google Sheets Append Row записывает:
ФИО, контакты, опыт (из резюме)
Matched vacancies (из AI результата)
Score и recommendation
Статус: "Отправлено приглашение" или "Отправлен вежливый отказ"
Автоматический ответ: If-блок проверяет наличие подходящих вакансий:
Если найдена подходящая вакансия: отправляется письмо-приглашение на интервью с указанием должности и даты собеседования.
Если нет совпадений: отправляется вежливый отказ с предложением присмотреть вакансии в будущем.
Пометка письма: Gmail Add label автоматически добавляет метку (например, "обработано автоматически") для легкого архивирования.
Технические детали:
Конфигурация: сервисный аккаунт Google Cloud для OAuth2 доступа к Gmail и Google Sheets.
Расписание: триггер срабатывает каждую минуту, что дает почти real-time обработку.
Лимиты: система обрабатывает до 100 писем/день без перегрузки благодаря асинхронной архитектуре n8n.
Безопасность: резюме не отправляются в облака третьих лиц (если нужно), все работает через Google Workspace компании.
Развертывание:
Разворачивается на VPS/облаке компании или через Railway/Beget (публичный HTTPS для вебхука).
Google Sheets как база данных (уже в экосистеме большинства компаний).
Настройка занимает 2–3 часа, включая создание таблицы и настройку критериев скрининга.
Полностью автоматический конвейер, который ежедневно обрабатывает 20–50 резюме, парсит их, сравнивает с вакансиями, отправляет письма и заполняет базу кандидатов — всё без участия HR-менеджера.
Метрики и эффект:
Метрика До После Улучшение
Время на одно резюме 3–5 мин 0 мин (автомат) 100% экономия
Общее время HR/день 2,5 часа 30 мин (проверка итогов) 5x экономия
Ошибки в скрининге 15–20% потерь <2% потерь 90% снижение
Скорость ответа кандидату 24–48 часов 5 минут 480x быстрее
Активная база кандидатов 50–100 чел 500+ чел (растет каждый день) 5–10x рост
Примеры результатов:
Неделя 1: система обработала 143 резюме, приняла 18 кандидатов на собеседование (12.6%), остальным отправлены вежливые отказы.
Месяц 1: база выросла с 50 до 420 кандидатов, из них 62 прошли интервью, 12 получили оферы.
Экономия: 2,5 часа/день × 20 рабочих дней = 50 часов/месяц экономии для HR-менеджера.
Применение на практике:
Клиент (строительная компания с сетью из 3 офисов) внедрил систему:
Остановил потерю резюме — теперь все 100% откликов получают ответ в течение 5 минут.
Перестал обзванивать кандидатов вручную — письма отправляются автоматически с персональными рекомендациями.
Создал реальную кадровую базу: каждый кандидат с контактами в Google Sheets, скором по вакансиям, готов для быстрого подбора.
HR-менеджер теперь проводит 10–15 собеседований в неделю вместо 2–3 (потому что система отфильтровала хорошие кандидаты заранее).
ROI и коммерческий эффект:
Затраты: OpenAI API ~200–300 ₽/день (на 30 откликов), хостинг n8n 3 000 ₽/месяц.
Экономия: 50 часов HR-менеджера в месяц × 1 500 ₽/час (зарплата + налоги) = 75 000 ₽/месяц.
ROI: 100 000 ₽ инвестиции окупаются за 1–1,5 месяца.
Бонус: 20% сокращение времени на найм → быстрый рост команды → дополнительная прибыль от новых проектов.
Масштабирование:
Система легко расширяется на несколько компаний одновременно (разные Google Sheets и вакансии).
Можно добавить интеграцию с HRM-системами (1C, Битрикс 24) вместо Google Sheets.
Для крупных компаний возможно добавление видео-интервью и второго раунда скрининга.