Как искать вакансии разработчику зарубежом или как мы продали душу за вакансии
Привет! Я Александр, многим знаком по содержательным статьям о том, как нанимать людей через хакатоны. Я люблю создавать небольшие стартапы и одной из идей появилась создать Сатана Джобс – сервис, который помогает закрыть эти чёртовы горящие вакансии в IT-компаниях
В этой статье я расскажу какие вызовы есть у современной разработки и какие хитрости можно применить, чтобы уменьшить стоимость разработки при помощи 0-кода и сервисов автоматизации
Как появилась идея
Мне регулярно пишут с просьбой опубликовать вакансии в моих телеграм-каналах. Это трудозатратно – нужно попросить человека прислать дополнительную информацию, оформить вакансию, поставить дату публикации в Controller Bot и другие системы автопубликаций. Поскольку я уже давно публикую анонсы хакатонов, я решился на эксперимент – учитывая опыт с хакатонами, сделать автоматизированный сервис для поиска кандидатов и размещения вакансий.
На вопрос как должен выглядеть сервис? Мне вспомнилось детство. В школе я любил списывать на уроках. Это очень полезный навык для реальной жизни – найти что-то работающее и улучшить.
Один из популярных сервисов для поиска удалёнки является инди-проект http://remoteok.io. Его сделал Pieter Levels, довольно известный хакер. Сегодня его проект зарабатывает порядка миллиона долларов в год, о чём и заявляет он на своей странице Open Startup. Вообще Питер очень целеустремлённый, у него есть впечатляющая лекция, меняющее понимание о том, как делать стартапы "How to Build a Startup Without Funding by Pieter Levels". Лично меня безумно замотивировала его история о создании компании с миллионной выручкой без инвестиций (bootstrapped). Ответ на вопрос пришёл сам собой – нужно скопировать существующий популярный проект.
Решение
Продукт
Сатана Джобс – это кросс-платформенное размещение вакансий в сообществах: отправив вакансию нам, она проходит модерацию и публикуется в нескольких телеграм каналах, и у нас на сайте. Администраторы ресурсов с вакансиями могут подключить Сатана Джобс к себе и получать дополнительный доход с размещённых вакансий, а разработчики – находить удалённую работу от зарубежных стартапов, парт-тайм подработку и кофаундеров в проект.
Сервис сделали преимущественно на 0-код инструментах: это позволяет быстро модерировать вакансии, подключать новые площадки для размещения в пару кликов, а также оперативно получать оповещения о новых вакансиях, которые предложили рекрутёры.
Как мы делали первую версию Сатана Джобс
Изучение рынка
Первое, с чего мы начали – немного покопались в рынке. В рекрутинге наиболее приоритетная задача – поиск senior-разработчиков в LinkedIn, а у самих разработчиков – найти интересные предложения на удалёнку. Браться за скрининг кандидатов в Линкедине немного трудозатратно, а вот сделать поток из таких заинтересованных кандидатов – вполне реально.
Вообще, при создании MVP я делаю две вещи:
- Общаюсь с целевой аудиторией (Качественное исследование рынка)
- Ищу тренды по количеству запросов в гугле (Количественное исследование рынка)
Поскольку я и мой кофаундер Дима оба разработчики, то мы и являемся целевой аудиторией сервиса – вроде как гипотез тестировать нужно в разы меньше. Если среди читающих есть продакты, поделитесь насколько это в плюс или в минус проекту касательно касдева.
Второй пункт в моём случае помог собрать список из трех десятков конкурентов, которые все как один похожи, но всё же немного отличаются. В конце статьи я оставлю ссылки на несколько джоб-борд, которые на мой взгляд наиболее интересны для поиска вакансий на удалёнку.
Любопытное наблюдение – количество запросов в гугле по удалённым вакансиям и по data science вакансиям в США за 5 лет. Из скриншотов логичный вывод – интерес к remote jobs растёт, а к data science – нет (во всяком случае, пока)
Разработка продукта
Для меня челендж состоял в том, чтобы минимальными ресурсами разработки сделать сервис, который помогает мне, как создателю нескольких телеграм-каналов, публиковать контент с минимальным временем на редактирование.
Размещение вакансий
Коротко
Публикация вакансий для рекрутёра происходит максимально просто – ему достаточно заполнить анкету, похожую на Google-форму, вакансия сразу попадает к нам в админку и мы, проведя модерацию, публикуем её в требуемых ресурсах. Попробовать размещение можно у нас на сайте satanjobs.com
О технических деталях
В качестве бекенда было решено взять Airtable и Integromat. О его мощности я узнал в замечательном сообществе Вадика Михалева в тг "Я – зерокодер". Зирокод – это когда ты не пишешь код, а используешь уже готовые элементы (конструктор). Чаще всего, к зирокоду относятся как к инструменту для прототипирования, при этом во многих стартапах, где смысл в контенте, а не в глубокой технологии, большинство логики уместно перенести на 0-код.
В нашем случае логика работы такая: за хранение всех вакансий (стека технологий, мест публикации и т.п.) отвечает Airtable – прокаченные гугл-таблицы.
Причины, почему мы выбрали Airtable:
- возможность оперативно менять любые поля вакансий с нулевыми затратами. В будущем может оказаться, что какое-то поле не нужно пользователям, а разработка встанет в копейку. У нас же достаточно изменить колонку Airtable и фикс в прод готов.
- Добавление вакансий для рекрутеров осуществляется также через Airtable – через форму-опрос, которая меняется, если вы изменили поля самой таблицы
Сейчас, я бы отметил, для всех тех, кто делает свои инди-проекты следующие плюсы и минусы Airtable
Плюсы Airtable для стартапа, где важен контент
- Есть встроенные формы, которые сразу заливают результат в админку
- Интегрируется с большинством других 0-код сервисов (Zapier, Integromat)
- Из коробки удобный API, чтобы достать/обновить элементы
- Бесплатно 1000 записей, старые записи можно переносить в другую таблицу. Платно – до 50000 записей за ~$20 в месяц
- Удобный markdown-редактор и история изменений
- Из коробки можно менять таблицы, форматировать и не просить разработчика поправить что-то
- Аналогичная разработка на Django заняла бы минимум 40-100 тысяч рублей работы фрилансера
Минусы Airtable
- Гипотетические ограничения по форматированию (хотя почти любые задачи можно решить небольшими скриптами)
- Сложнее подходит для контента, где много связей (например, если вы делаете графы)
- Лимиты в базовом тарифе на upload и количество строк
- Безопасность данных – airtable не подойдёт проектам, где требуется повышенная защищённость данных
Кстати, касательно того, что Airtable подойдёт только для прототипов – миф. Например, Леван Квирквелия сделал электронный дневник с 300.000 пользователями и базой на Airtable, и рассказал об этом в лекции ZeroCode: Как тестировать больше гипотез и экономить миллионы?
Публикация вакансий
Коротко
После того, когда вакансия получает статус "ready for publish" вакансия отправляется в очередь для публикаций, после чего распростроняется по подключённым телеграм-пабликам и сайту. При этом формат публикаций можно варьировать в зависимости от телеграм-канала: на многих площадках у администраторов свой формат публикаций и кнопок
О технических деталях
Как уже писал ранее, важна гибкость всей системы – и с этим отлично справляется Integromat – это "клей" 0-код проекта. Работает это таким образом: раз в 12 часов система проверяет неопубликованные вакансии в Airtable и публикует их в телеграм каналы. Визуально в интерфейсе это выглядит как последовательность исполняемых команд, где все поля автоматически подтягиваются из Airtable, при необходимости можно делать предварительное форматирование, добавлять кнопки публикаций и режим форматирования markdown/html и обрабатывать ошибки публикаций, а также добавлять десятки других команд в пару кликов мышкой.
Чем мне понравился интегромат – можно быстро подключить несколько телеграм-ботов, которые будут выполнять разные задачи: один бот публикует вакансии, второй бот пишет об ошибках в служебный чат телеграм. При этом добавление, скажем, Slack, Facebook Messenger или внешней популярной CRM происходит мгновенно как очередной блок системы.
Примерно аналогичным образом у нас реализована система нотификации, если пользователь отправил нам новую вакансию
Плюсы Integromat
- Несколько сотен интеграций, которые не нужно программировать
- 1000 операций в месяц бесплатно, чего в целом хватает для небольшого проекта
- Пожалуй, самый простой интерфейс из тех сервисов автоматизации, которые я использовал
- Есть поддержка нелинейных сложных сценариев
Недостатки Integromat
- Функционал ограничен самими интеграциями – например, сделать персонализированного чат-бота можно, но придётся плясать с бубном
- Форматирование текстов – боль, скажем, интеграция с телеграм ломается, если ей подавать по очереди markdown и html разметку - нужно либо удалять все html-тэги из текста, или удалять все элементы markdown-разметки
- Тарификация идёт за операции – если вы что-то отлаживаете, то можете случайно выйти за лимиты и придётся докупать тариф
Интеграция с веб или как надо и не надо работать с фрилансерами
Сделав прототип для каналов в телеграм, решил сделать веб-версию.
Про дизайн
Попросил знакомого дизайнера сделать стиль в фигме. Идея про название появилась сама собой – вакансии горят, а что, как не ад, ассоциируется с огнём?
Прислал дизайнеру несколько референсов и описание что хочу. Мы договорились, что в воскресенье он покажет результаты и каждый ушёл в свои дела. Очевидно, здесь должен быть вывод, что сроки любого фрилансера можно воспринимать как +25-50% времени, в этом случае было не исключение: в понедельник меня предупредили, что дизайн будет ко вторнику, во вторник дизайнер попал в автоаварию.
Не забывайте, что на старте могут быть любые трудности, даже такие серьезные, как внеплановые больничные ваших сотрудников.
Пожелав скорейшего выздоровления и прождав ещё пару дней, всё-таки получил дизайн.
Кстати, поделюсь советом по работе с креативными сотрудниками
У меня есть простое правило, которое я подслушал у Артемия Лебедева касательно дизайнеров – любому творческому человеку просто необходима свобода для творчества. Если дать ему строгое ТЗ, творческий человек из творца превратиться в машину, слово творческий можно вычёркивать. Собственно, результат от машины вероятно вы получите соответствующий
Про вёрстку
Долго думал делать проект полностью на 0-коде, ведь для веб-версии, есть, например Bubble, позволяющий сделать полноценный сервис без единой строчки кода. В нашем сервисе не последнюю роль играет дизайн, а существующие конструкторы часто дают ограниченный набор анимаций и возможностей по кастомизации. Поэтому, веб-версию решил сделать на React и развернуть на бесплатном веб-хостинге https://vercel.com.
Про наполнение первыми вакансиями
Что появилось раньше – вакансия или разработчики?
Чтобы наполнить джоб-борду нет проще идеи как спарсить чужие джоб борды. Пираты 21 века – это те, кто ворует данные. Становиться пиратом я не захотел, поэтому нашёл публичный API для получения вакансий. К удивлению, сайт remoteok, который я упоминал в начале статьи и собирался копировать, как раз предоставлял такой API. Я написал небольшой скрипт на питоне, который добавил в яндекс облако. Раз в 24 часа скрипт загружает новые вакансии из Remote Ok, добавляет их в базу и триггерит цепочку публикаций в каналы и на сайт. Из очевидных плюсов такого подхода – можно добавить больше ресурсов для сбора данных о вакансиях, поэтому, если вам интересно размещать у нас свои вакансии, мы готовы подключить ваш сайт – напишите на почту hell@satanjobs.com. Что ещё хочется отметить – за Яндекс.Облако не приходиться платить – всё сделано на облачных функциях, которые обходятся нам бесплатно.
Финально
Проект мы делаем вдвоём с Димой Малаховым, Senior Frontend разработчиком. Учитывая, что пользование Airtable, Integromat, Vercel, Yandex.Cloud выходят нам в 0 рублей в месяц, то единственная денежная трата в проекте была на дизайн.
Завершая, мы как-то сами пропёрлись с нейминга – вот подумайте – горящие вакансии, рекрутинг как девять кругов ада и разработчики, фанаты Гилфойла из Кремневой Долины. Что может быть круче, чем Сатана Джобз?
Если вы хотите посотрудничать с нами, и оказаться в пекле рекрутёрских событий, то напишите на почту hell@satanjobs.com
Бонус: где искать вакансии на удалёнку разработчику
В совокупности с пользовательскими интервью, предлагаю вам список мест, где можно искать вакансии на удалёнку разработчику. Разумеется, подобных сервисов в сотни раз больше, я лишь решил отметить те, которые лично мне симпатизируют.
- https://satanjobs.com – чёртовы вакансии с огоньком
- http://stackoverflow.com/jobs – все разработчики знают про Stack Over Flow, причём мало кто слышал, что там есть раздел по поиску вакансий
- https://your.gms.tech/ – G-mate – бот в телеграм для подбора персонализированных вакансий
- https://djinni.co/– персональный помощник по поиску вакансий
- profunctor – российские ребята публикуют вакансии, которых нет в LinkedIn
- remoteok.io – популярный сайт по поиску удалёнки, преимущественно публикуют преимущественно вакансии из nomad-сообщества и крупных US-based компаний
- arc.dev – удобный агрегатор вакансий
- turing.com – нашумевший HR-tech стартап с проработанным скорингом разработчиков
- remoteml.com – вакансии для data science / machine learning разработчиков
- https://cryptojobslist.com – вакансии в крипте/блокчейне
- weworkremotely.com – здесь часто встречаются компании, которых нет на других сайтах по поиску удалёнки
Была ли полезна статья? Важно ваше мнение, поделитесь в комментарии