Александр Зуев
JobCatcher - Десктопное приложение, которое отслеживает появление новых вакансий и фриланс-заказов
Александр Зуев
#Разработка программного обеспечения

JobCatcher - Десктопное приложение, которое отслеживает появление новых вакансий и фриланс-заказов

11 
Александр Зуев Россия, Краснодар
Поделиться: 0 0 0
JobCatcher - Десктопное приложение, которое отслеживает появление новых вакансий и фриланс-заказов
Бюджет

60 000

Сфера

Информационные технологии и интернет

Сдано

Ноябрь 2022

Задача

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

Требовалось построить систему, которая:

- объединяет несколько независимых площадок в единую ленту новых предложений;

- обнаруживает новинки с минимальной задержкой и фильтрует их по зарплате, ключевым словам, свежести, формату работы и региону;

- работает стабильно и автономно сутками, переживая разрывы сессий, редиректы, смену кодировок и анти-бот-проверки;

- ведет отдельные изолированные профили под разные специализации и аккаунты, не смешивая их данные и сессии;

- гарантирует отсутствие дублей - каждое предложение показывается ровно один раз.

Решение

Реализовано единое приложение-агрегатор с двумя независимыми конвейерами сбора (вакансии и фриланс-заказы), общим ядром доступа к сети и централизованным хранилищем.

Ключевые возможности:

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

  • Реальное время. Фоновые таймеры с раздельными интервалами опроса (фриланс-лента - каждые 30 секунд, вакансии - каждые 5 минут) обеспечивают появление нового заказа в интерфейсе в течение 30–60 секунд после публикации.

  • Умная фильтрация. Отсев по порогу зарплаты, OR-фильтр по списку ключевых слов (имя + описание), окно свежести (заказы старше 2 дней отбрасываются), исключение нерелевантных регионов.

  • Гарантированная уникальность. Многоуровневая дедупликация: по URL и по композитному ключу «название + зарплата + компания», что снимает повторы при перепубликациях и «премиум-поднятии» объявлений.

  • Мгновенное реагирование. Всплывающие уведомления, иконка в трее, email-оповещения и отклик/переход к заказу в один клик с автоматической подстановкой шаблона сопроводительного письма в буфер обмена.

Результат

  • 3 разнородные площадки объединены в одну ленту с единой моделью данных, фильтрацией и дедупликацией.

  • Задержка обнаружения нового предложения - 30–60 секунд: время реакции на заказ сокращено с десятков минут ручного мониторинга до секунд, что напрямую повышает конверсию откликов на конкурентном фрилансе.

  • До 500 позиций за один запрос страницы поиска с автоматическим постраничным обходом всей выдачи.

  • Близкая к нулю доля дублей благодаря многоуровневой дедупликации - лента не «зашумляется» повторными публикациями.

  • Автономная работа 24/7 в фоне с самостоятельным поддержанием авторизованных сессий и устойчивостью к редиректам, сменам кодировок и анти-бот-проверкам.

  • Полная изоляция профилей и аккаунтов (отдельные cookie, прокси, фильтры) - одна установка обслуживает несколько специализаций одновременно.

  • Сетевое ядро спроектировано как переиспользуемая библиотека и применимо за рамками этого продукта в любых задачах сбора данных.

https://github.com/alexxxdevelop/JobCatcher/

Стек технологий

  • С# С# Язык программирования

Оцените кейс
Спасибо за оценку
Выскажите мнение
Авторизуйтесь, чтобы добавить свой комментарий.
оставить заявку

Хотите заказать похожий проект?

Оставить заявку