Как находить кандидатов на Stack Overflow
Внутренний поиск, X-ray, сканирование базы пользователей через SQL-запросы и прочие лайфхаки для рекрутинга на Stack Overflow.
Мы поговорили про сорсинг на Stack Overflow с Русланом Сарваровым из компании Evrone. Руслан рассказал, чем Q&A-сервис для разработчиков полезен рекрутерам, как вести внутренний и внешний поиск кандидатов, а также объяснил, как составлять SQL-запросы к базе данных пользователей, если не знаешь SQL.
Что такое Stack Overflow и кого там искать
Stack Overflow — это Q&A-сервис для айтишников, где одни люди задают вопросы, а другие отвечают. По сути, это огромная база знаний, с помощью которой IT-специалисты решают свои боевые задачи.
Аудитория сайта насчитывает свыше 100 миллионов человек со всего мира. Среди пользователей не только разработчики, а все, кто пишет код, в том числе ML-инженеры и автотестировщики.
Особенности сервиса
Легче оценить экспертность кандидата
Если зайти в профиль пользователя на GitHub, то можно посмотреть написанный им код и понять, какие языки программирования он знает. Но зачастую рекрутеры недостаточно глубоко разбираются в коде — им сложно определить, чем конкретно занимается кандидат и в чем он эксперт.
Эту задачу легче решить на Stack Overflow: здесь можно почитать ветки по вопросам, в обсуждениях которых участвует пользователь. Это позволяет более детально проанализировать его опыт, понять интересы и проблемы.
Сложно искать информацию о кандидате
В целом это сервис, где айтишники могут обмениваться знаниями и опытом, не подвергаясь атакам рекрутеров. Именно поэтому внутренний поиск Stack Overflow ориентирован на сбор информации по конкретным темам, а не на сканирование профилей пользователей. К счастью, эти ограничения можно обойти — еще расскажу как.
Еще недавно на Stack Overflow были инструменты для работодателей:
- Jobs — можно было публиковать вакансии, разбирать отклики и писать кандидатам;
- Salary Calculator — калькулятор зарплат и аналитика вилок по каждому стеку технологий;
- Developer Story — резюме в профиле пользователя.
Ни один из этих продуктов больше не работает: создатели Stack Overflow решили, что не стоит превращать сервис в очередной джоб-сайт.
Stack Overflow — не основной, а дополнительный канал поиска
У вас не получится отправить пользователю личное сообщение внутри сервиса: такой функции нет. Скорее всего, вы не сможете понять, открыт ли кандидат к предложениям — если только он сам не напишет об этом в профиле.
Типичный сценарий использования сервиса: нашли кандидата на LinkedIn или GitHub, а потом перешли в его аккаунт на Stack Overflow, чтобы оценить опыт и понять, за что стоит зацепиться на интервью. Или наоборот: встретили подходящего специалиста на Stack Overflow, а потом нашли его аккаунты в других соцсетях и платформах.
X-ray-поиск по Developer Story
Раньше внутри профиля пользователя был специальный раздел Developer Story. Он выглядел как полноценное резюме с контактными данными и информацией о предыдущих местах работы и образовании:
Сейчас все эти страницы недоступны, но благодаря кэшу гугла их можно просматривать. Например, найдем резюме golang-разработчиков, которые в своих навыках указали Kubernetes. Запрос будет таким:
Раньше Developer Story (резюме) хранились по адресу stackoverflow. com/cv. А с помощью символа * мы сообщаем гуглу о том, что после ключевого слова может идти какой угодно текст.
В результате мы получаем поисковую выдачу. Но при попытке перейти по любой ссылке система сообщает, что Page not found. К счастью, все удаленные страницы еще хранятся в памяти гугла: чтобы открыть страницу, нажмите на значок с треугольником и кликните по ссылке «Сохраненная копия»:
В основном таким Х-ray-запросом я находил резюме разработчиков уровня «сениор» и выше — с опытом от 3 до 5 лет в определенном стеке. Реже встречаются джуны и мидлы.
Чтобы сохранить поисковую выдачу, советую использовать расширение Instant Data Scrapper. Оно сформирует таблицу, где будут ссылки на кэшированные страницы:
X-ray-поиск по профилям пользователей
Профили всех пользователей хранятся по адресу stackoverflow. com/users. Причем помимо глобального Stack Overflow есть русскоязычный сегмент — он находится на поддомене ru. stackoverflow. com.
Искать только по русскоязычным пользователям можно двумя способами:
Поиск по поддомену ru позволяет сузить выдачу. Например, если написать site:ru. stackoverflow. com/users ios swift, то гугл покажет около 200 профилей, а по запросу site:stackoverflow. com/users ios swift Russia — более 500.
Далеко не во всех профилях есть контакты. Но можно поискать среди пользователей, которые указали свой LinkedIn: cсылка будет в блоке About или в информации под фото. Составляем запрос:
Stack Overflow — это не джоб-сайт, поэтому большинство пользователей не ищут работу. Но те, кто открыт к предложениям, иногда используют фразу looking for — за это можно зацепиться в запросе:
Поиск через Stack Exchange Data Explorer
Stack Exchange Data Explorer — это сервис для поиска по базе пользователей Stack Overflow с помощью SQL-запросов. Если вы не знаете язык SQL, не беда, есть инструменты, которые помогут сформировать нужный запрос.
Генератор SQL-запросов
Этот сервис создает запрос под ваши требования. Можно задать местоположение и скиллы, выбрать обладателей конкретных бейджей от Stack Overflow:
В правой колонке автоматически формируется SQL-запрос. При нажатии на голубую кнопку текст копируется в буфер, а вас перекидывает на Stack Exchange Data Explorer, где можно отправить запрос.
Готовые скрипты
Скорее всего, нужный вам запрос уже кем-то написан — осталось только найти и подправить его под свои задачи.
Например, я нашел интересный скрипт, который необходимо настроить: указать локацию поиска в User. Location и скиллы (язык программирования или фреймворки) в Tags. TagName. Скрипт формирует таблицу, где по каждому пользователю есть информация:
- Ссылка на профиль в Stack Overflow.
- Репутация — формируется за счет ответов на вопросы и является частью системы геймификации Stack Overflow.
- Ссылка на веб-сайт, который указан в профиле.
- Предполагаемые ссылки на GitHub, LinkedIn и Telegram — формируются путем подстановки никнейма пользователя на Stack Overflow. Это сработает, только если человек использует один и тот же никнейм в разных соцсетях.
Есть готовый запрос для поиска по стеку и локации — надо только заполнить поля TagName и LocationName, а потом нажать кнопку Run Query. Например, если вбить Rust и Moscow, то получим выдачу из 50 профилей.
Внутренний поиск
Поиск по темам
Внутренний поиск Stack Overflow ориентирован не на людей и их навыки, а на темы и сообщения. Допустим, вам требуется информация по какой-то проблеме — делаете запрос и смотрите решения.
А вот получить выборку из всех java-разработчиков из Москвы не получится: этих фильтров просто нет во внутреннем поиске. С такими запросами лучше сразу идти на GitHub, LinkedIn или классические джоб-борды.
Но зато вы можете найти человека, который разбирается в узкой теме. Сценарий поиска такой:
- Рекрутер знает о проблеме, которую решает команда разработки.
- Он вбивает запрос по этой проблеме в поисковую строку на Stack Overflow.
- Затем читает обсуждения и пытается связаться с людьми, которые его заинтересовали.
Однажды таким способом я искал Reverse Engineer — это редкий специалист, который занимается информационной безопасностью и исследованиями. Я нашел кандидата и довел его до оффера, который тот, увы, так и не принял.
Поиск синонимов
Stack Overflow можно использовать не только для поиска кандидатов — это еще и полезная база знаний для рекрутера, который начал работать с новой вакансией.
Допустим, вы впервые ищете ML-инженера и не знаете, какие ключевые слова использовать. Можно отправиться в гугл: разбираться в статьях, где обычно много воды, вычленять ключевики, пытаться докопаться до сути. Но есть более простой и быстрый способ — перейти в раздел «Метки» на Stack Overflow, найти нужную технологию, посмотреть описание и связанные с ней ключевые слова:
Для чего подходит Stack Overflow
Если нужен редкий специалист
Если ищете специалиста с редкой экспертизой или сочетанием скиллов, то Stack Overflow — хороший выбор. За классическими джавистами, питонистами, php-разработчиками и гошниками можно отправляться в другие источники, более удобные для рекрутинга.
Если нужна «звезда»
Здесь могут обитать популярные в комьюнити разработчики — они отвечают на вопросы, участвуют в обсуждениях, зарабатывают себе бейджи и репутацию.
Если вы охотитесь за конкретным кандидатом, то можете найти его на Stack Overflow. Почитайте, что он пишет в обсуждениях, чем интересуется — это помогает понять, как построить диалог со звездным собеседником.
Если надо изучить стек технологий
Чтобы построить конструктивный диалог с кандидатом, рекрутер должен говорить с ним на одном языке. А для этого нужно хотя бы минимально, но разбираться в предметной области: знать свой стек технологий, основные фреймворки и обсуждаемые темы.
Stack Overflow можно использовать для того, чтобы глубже погрузиться в предметную область, понять, чем живет сообщество, какие проблемы решает и что обсуждает.
Еще про сорсинг в блоге Хантфлоу:
Наш блог читают более 12 000 рекрутеров и профессионалов HR-индустрии. Подкасты, интервью, тематические статьи и экспертные мнения. Переходите по ссылке:
#hr #рекрутинг #hrm #recruiting #найм_сотрудников #подборперсонала #hrm #huntflow #itrecruitment #itrecruiter #recruitment
Вы мне логику сломали. По гитхабу вы не способны оценить кандидата, но зато способны вынести экспертную оценку на основе профессиональных разговоров. Как такое возможно???
Да никак.
Некоторые HR ебнулись и считают, что человека может брать в компанию по разговорам, по софт-скиллам, когда это в корне неверно.
Хорошее говорение должно быть преимуществом при прочих равных, но никак основным критерием найма (напомню, основной критерий найма — техническое интервью и/или техническое задание)
Он выше гор
Выглядит как хуйня (особенно проиграл с кэша Гугла для рассмотрения CV).
Не мал процент разработчиков (хороших, качественно делающих свою работу), у которых нет публичного Гитхаба, нет аккаунта на СтекОверфлоу и вообще они скрыты от мира, ибо нахуй надо?
Для всего остального есть собеседования (обычные и технические), тестовые задания и прочее.
Не обязательно они скрыты, у них может банально не хватать времени на это всё
Я только хотел об этом написать.
Да, банально не хватает времени, весь код залит у заказчика/работодателя, пет-проектов не имею и не собираюсь иметь (жизнь полна других интересностей; зачем целыми днями залипать в монитор?). Какой тут активный ГитХаб с репозиториями?
Какая, чёрт возьми, звёздная активность на СтекОверфлоу, там жить надо, чтобы звездочку набить? А если я не хочу там сидеть, я уже плохой разрабочик? 😄