Telegram-бот · n8n · PostgreSQL · API

Агрегатор вакансий, который сам находит нужное

Бот собирает вакансии с десятков площадок, складывает в базу и присылает каждому подписчику только подходящие — по его ключевым словам, зарплате и локации. Подписка, фильтры, рассылка — всё на автопилоте 24/7.

каждые 3 чобновление вакансий из API
до 7000пользователей/день без переписывания
≈300 ₽/месполная стоимость владения
24/7работа без участия оператора

Какую задачу решает

Соискатель тонет в десятках джоб-бордов и сотнях нерелевантных вакансий. Сервис превращает этот хаос в один поток подходящих предложений прямо в Telegram.

❌ Как без бота

  • Ручной обход 5–10 сайтов каждый день
  • Одни и те же вакансии по кругу
  • 90% выдачи — мимо по зарплате и стеку
  • Хорошие вакансии находишь с опозданием
  • Нет единого места и истории

✅ Как с ботом

  • Все площадки агрегируются автоматически
  • Дубликаты отсеиваются на двух уровнях
  • Приходит только то, что под твой фильтр
  • Свежие вакансии — в течение 3 часов
  • Один Telegram, своя подписка и настройки

Как это выглядит

Слева — что видит пользователь в Telegram; справа — что происходит под капотом каждые 3 часа.

Job Radar Botонлайн
/start
Привет! 👋 Я присылаю вакансии под твои фильтры. Настрой их командой /filter и начни получать подборки.
/filter keywords=n8n,python salary_min=150000 location=remote
✅ Фильтры сохранены: 🔑 n8n, python 💰 от 150 000 📍 remote Теперь буду присылать подходящее!
🆕 n8n / Python разработчик 🏢 RemoteCompany 📍 remote · 💰 180 000 ₽ 🔗 Открыть вакансию 📌 Remotive
/status
📊 Твои настройки: 🔑 n8n, python · 💰 от 150 000 · 📍 remote ⏳ Подписка: бессрочно
1
Собирает из API

Параллельные запросы к источникам (RemoteOK, Remotive, hh.ru и др.). Не чаще лимитов — раз в 3 часа.

2
Нормализует и дедуплицирует

Разные форматы приводятся к единой схеме, повторы отсекаются по уникальному ID.

3
Складывает в базу

PostgreSQL с индексами. Бот отдаёт вакансии из базы — API не дёргается на каждый запрос.

4
Матчит и рассылает

Для каждого подписчика — проверка по его фильтрам, отправка только совпадений, лог против повторов.

Что внутри

Решения, которые отличают рабочий сервис от «скрипта, который падает на второй день».

🗄️

База вместо запросов вживую

Вакансии кэшируются в PostgreSQL. Тысячи пользователей не создают тысячи обращений к API.

🎯

Персональные фильтры

У каждого свои ключевые слова, зарплата и локация. Матчинг вакансии × пользователь на лету.

🛡️

Защита от SQL-инъекций

Все запросы параметризованы. Ввод пользователя не попадает в SQL напрямую.

♻️

Двойная дедупликация

ON CONFLICT в базе + журнал отправок: одна вакансия не придёт дважды.

🚑

Перехват ошибок

Отдельный workflow ловит любой сбой, пишет в лог и уведомляет администратора в Telegram.

📊

Мониторинг сервера

Контроль диска и RAM ежечасно, алерт при превышении 80%. Авто-очистка старых данных.

Архитектура — 5 модулей

Каждый модуль независим: можно дорабатывать и масштабировать по отдельности.

🔍 ПарсерAPI → нормализация → база → матчинг → рассылка. Раз в 3 часа.
🤖 Telegram-ботКоманды /start /filter /status /stop. Webhook, не polling.
🧹 Очистка БДУдаляет данные старше 60 дней. Ежедневно в 03:00 + отчёт.
📊 МониторингДиск и RAM каждый час, алерт при >80%.
🚑 Обработчик ошибокГлобальный перехват сбоев → лог + уведомление.

Технологии

Open-source стек на собственном сервере — без абонентских плат за платформу.

n8nоркестрация
PostgreSQLхранилище + индексы
Telegram Bot APIинтерфейс
REST API источниковRemoteOK · Remotive · hh.ru
Docker + Nginxинфраструктура
HTTPS / WebhookLet's Encrypt

Стоимость владения

Платформа и источники бесплатны — платите только за небольшой VPS.

СтатьяСтоимость
n8n + PostgreSQL (self-hosted)0 ₽
Открытые API источников0 ₽
VPS Ubuntu (2 ГБ RAM)≈ 300–500 ₽/мес
Масштаб до тысяч пользователейапгрейд VPS + Redis по мере роста

Нужен такой агрегатор или бот под вашу задачу?

Соберу Telegram-бота с парсингом, базой, фильтрами и подпиской под ваш проект: вакансии, объявления, лиды, мониторинг цен — любой поток данных в один удобный канал.

Обсудить проект →