GetMatch — это сервис, который помогает IT-специалистам находить работу, а компаниям — закрывать вакансии. В отличие от классических job-бордов, GetMatch сразу показывает зарплатные вилки. Идея «просто» автоматизировать парсер вакансий зародилась у нас с Сашей Варламовым (канал Саши @data_bar) – как часто бывает, слово «просто» стало началом чего-то действительно масштабного. Сейчас у нас есть полноценная автоматизированная система, которая ежедневно парсит вакансии с GetMatch, загружает их в PostgreSQL, тянет курс рубля и доллара, отправляет отчеты в Telegram и полностью автоматизирует ETL-процесс для аналитики в дашборде. Поднял Airflow в docker-compose на Timeweb (не реклама, просто нравится админка), чтобы DAG’и можно было запускать и мониторить централизованно. Добавил CI/CD на GitHub Actions, чтобы больше не заходить на виртуалку вручную — всё деплоится автоматически. Был парсер getmatch, но я его переписал под Airflow с Taskflow API. Разделил задачи, сделал их атомарными и настроил on_failure_callback, который отправляет сообщения об ошибках в Telegram-канал. Теперь, если что-то сломается, я узнаю об этом сразу, а не через неделю, когда появится дыра в данных. База данных PostgreSQL развернута на другом VPS, чтобы разграничить вычисления и хранение данных. Создал таблицы vacancies, vacancy_skills, skills, где skills сразу вынесена в ref-таблицу, чтобы не дублировать текстовые значения. Настроил пользователей и доступы, подключил базу к Airflow. Бэкапы настроены на ежедневное обновление. Теперь каждая вакансия и навык привязаны к конкретному дню, что позволяет анализировать динамику рынка труда. Каждое утро DAG собирает свежие вакансии, тянет курсы валют и обновляет таблицы, а в Telegram приходит сообщение с итогами работы: сколько вакансий обработано, какие ошибки возникли. Теперь в дашборде можно: • Смотреть историю изменения вакансий по дням • Анализировать время жизни вакансий и скорость закрытия • Отслеживать корреляцию зарплат с навыками • Изучать спрос на скиллы в динамике Раньше были просто “актуальные вакансии”, теперь есть полноценная разбивка по дням, что открывает больше возможностей для анализа. Посмотри на наш дашборд анализа зарплатных вилок 👈 🔹 public.tableau.com иногда работает, только под VPN из РФ — держи мой VPN. Выше рассказывал, как разробатывал его в новогодние праздники @ShtormVPNBot 🫂 В планах — развернуть dbt и начать собирать слой трансформаций, чтобы сразу приводить данные в нужный вид для аналитики.