Мне надоело вручную искать работу и я написал mvp бот-агрегатор вакансий в телеграм

Привет! Меня зовут Иван. Я написал бот Ready2Work, который собирает вакансии с тематических телеграм каналов. Расскажу о том что сподвигло, к чему пришел и что в планах.

Предистория.

Компания где я работал закрылась. И так как у меня нет накоплений в несколько десятков миллионов, чтобы жить не работая, нужно было искать работу.

Да, я вновь активировал анкету на hh, начал смотреть вакансии какие мне там попадались, но большенство найденных вакансий мне не подходили по ряду параметров и захотелось расширить круг поиска.

И где же еще можно найти много вакансий? Конечно же в телеграм каналах с этими самым вакансиями. Но, как вы понимаете, листать сотни каналов с вакансиями это тоже не выход. Поэтому я решил написать агрегатор. Да, агрегаторов полно, но нормальных агрегаторов по вакансиями в телеграме, я не нашел.

Как искать и расширяться?

Чтобы что-то найти, нужно было сначала что-то собрать. Для начала я написал бот-сборщик всего что постится на канал с вакансиями. Смысла собирать старые вакансии не было, поэтому собираются только новые сообщения. Все сообщения бережно складывают и обрабатываются чтобы определить, является ли сообщение вакансией или это реклама курсов, ставок и прочих рекламных дел. Затем эти сообщения индексируются, чтобы потом можно было легко найти нужное.

И казалось бы все готово. Но я знал только пару каналов с вакансиями, а этого мало. Поэтому кроме анализа сообщений с вакансиями бот мониторит и рекламу других каналов с вакансиями. И база начала разрастаться. В начале я добавил пару крупных «игроков», а дальше уже дело техники и время ожидания.

На данный момент мониторится около 500 каналов с вакансиями. В день добавляется более 1000 вакансий.

Наработки по поиску.

Сейчас в боте кроме поиска еще есть и подписка на то что пользователь искал. Т.е. если пользователь искал «фронтенд» и подписался на эту выдачу, то ему будут приходить уведомления, если вакансия с такой формулировкой появится. А т.к. в боте работает морфологической поиск, так что волноваться за род, число и падеж не стоит.

Поиск сделан так, что сначала пользователю показываются вакансии за день, за неделю, за 2 недели и за месяц. Т.е. вначале всегда показывается самое свежее.

При этом постоянно мониторится статус вакансии и если она удаляется с канала источника, то вакансия так же пропадает и из поискового индекса.

Проблемы.

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

Успешность MVP.

Так как это mvp продукта, то дальнейшая судьба бота зависит конечно же от пользователей. Зайдет ли он им или нет.

Метрикой успешности mvp я выбрал это кол-во подписок на вакансии и их просмотр. Кол-во пользователей не самый главный показатель в данной тематике.

Зашло? Что дальше?

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

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

Опять же есть план нейронкой собирать группы схожих вакансий. Чтобы при поиске «фронтенд разработчик» находились вакансии и «frontend developer», «js программист» и т.п.

Но ведь воровать грешно…

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

В заключение

Чтобы не потеряли, вот вам еще раз ссылка на бота. Расскажите в комментариях, как вам? Что понравилось, что не очень? Буду очень признателен если напишите о фичах которых не хватает в боте.

22
47 комментариев

Напишите в личку в телеге: @revealed_dave.
Есть пара мыслей. 


Тот самый админ джс, проджект и продакт Джобс каналов.

2
Ответить

@Ivan Koffka мне там написали в личку. Это вы?
Просто уточняю,а то всякое бывает

Ответить

Интересная штука.
1. Можно выделять названия вакансий жирным.
2. Когда нажимаешь "Показать еще", чтобы в самый конец не перебрасывало.
3. "Опять же есть план нейронкой собирать группы схожих вакансий" - это было бы просто замечательно.

1
Ответить

1. Думаю да. Сделаем.
2. Тут уже особенности телеграма. Но подумаю как можно сделать хорошо.
3. Все зависит от интереса пользователей к проекту. Ведь это не законченный продукт, а только mvp.

Ответить

спасибо! понравилось очень: показывает дату публикации вакансии, показывает подборку за неделю, показывает канал, откуда взято. нет привязки к одной категории, ее легко сменить! буду рекомендовать всем!

1
Ответить

Большое спасибо за отзыв!
Так же буду признателен за конструктивную критику. Что не понравилось или чего не хватает.

Ответить

Так а работу всё таки нашёл?

Ответить