Хотите привлечь лучших инженеров? Откройте код

в 14:11, , рубрики: github, open source, маркетинг исходников, найм программистов, рекрутинг, управление персоналом

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

Хотите привлечь лучших инженеров? Откройте код - 1

Иллюстрация Kevin Ma

«Вы знаете о проектах Facebook с открытым исходным кодом?»

Такой вопрос задал инженерам Джеймс Пирс, бывший директор программы по открытым исходным кодам Facebook. Он изучал причины, почему те пришли в компанию. Согласно его презентации на O'Reilly's Open Source Convention, две трети инженеров Facebook знали об этой программе до прихода в компанию, а половина сказали, что это «положительно повлияло на их решение работать в Facebook».

Facebook здесь не одинок. Независимо от размера компании, открытые исходники — один из лучших способов привлечь лучших инженеров. Мы проанализировали 30 ведущих американских технологических стартапов (по количеству поданных заявок на соискание вакансии) на AngelList за всю историю и обнаружили, что более половины из них размещают проекты open source:

Хотите привлечь лучших инженеров? Откройте код - 2

Грамотно применять открытые исходники для привлечения инженеров — целое искусство. Недостаточно просто опубликовать репозиторий на GitHub — и надеяться на лучшее. Чтобы принести пользу рекрутингу, следует подойти к каждому проекту open source с позиции маркетолога.

1. Пишите читаемый код

Смысл открытия кода — чтобы разработчики его изучили и, возможно, внесли свой вклад. Для этого код должен быть написан максимально понятно. Это значит:

  • Возможность максимально простого рефакторинга
  • Следование соглашениям о стилях для имён, отступов и проч.
  • Замена приватной информации переменными среды
  • Комментирование отдельных фрагментов

Инструмент react-beautiful-dnd для создания драг-н-дроп интерфейсов (в стиле Trello) на React — хороший пример чётко написанного программного обеспечения с открытым исходным кодом.

Структура проекта модульная, код понятен и тщательно закомментирован:

Хотите привлечь лучших инженеров? Откройте код - 3

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

В результате у репозитория более 10 000 звёзд на GitHub и коммиты от десятков участников. Вывод простой: чем проще сторонним разработчикам понять ваш код, тем легче им внести свой вклад.

2. Пишите эффективную документацию

Документация — это ваш рекламный буклет. Она должна с первого взгляда убедить инженеров, что ваш проект достоин участия. Для этого нужно:

  • Сформулировать ценность проекта
  • Объяснить все аспекты и процессы, чтобы у контрибуторов не возникало больше никаких вопросов
  • Перечислить технические спецификации, зависимости и лицензии
  • Обеспечить простой доступ к справочному материалу для особых случаев

Проект Annoy (Approximate Nearest Neighbors Oh Yeah) от Spotify — библиотека, которая «ищет в пространстве точки, близкие к заданной точке запроса» — пример очень хорошей документации. Файл README говорит, как установить библиотеку, окружение, содержит примеры кода, перечисляет зависимости и глубоко погружается в логику программного обеспечения.

В нём также сравнивается скорость Annoy с другими библиотеками nearest-neighbor:

Хотите привлечь лучших инженеров? Откройте код - 4

Всего одна страница документации даёт разработчикам всю необходимую информацию для решения, участвовать ли в этом проекте.

3. Продвигайте репозиторий как продукт

В 2018 году на GitHub ежедневно публиковалось более 82 000 репозиториев. Чтобы выделить свой проект среди миллионов других, требуются усилия и стратегия. Это не так уж отличается от запуска настоящего продукта. Рассмотрите такие возможности продвижения нового репозитория:

  • Популярные сайты: Hacker News, Reddit, Tech Ladder
  • Соответствующие сообщества: Product Hunt, Gitter, Dev.to
  • Каналы, где у вас уже есть аудитория: почтовая рассылка, социальные сети и многое другое

Можете проявить творческий подход и применить иные маркетинговые тактики. Например, команда Hack4Impact (некоммерческая организация, которая создаёт программное обеспечение для других некоммерческих организаций), проводила учебные семинары в местных университетах, для участия в которых студенты должны были использовать их новую библиотеку. Так у репозитория быстро появились форки и звёзды.

Если компания интересуется разработчиками узкой специализации, то продвижение ещё более важно. У стартапа Wallaroo Labs, который помогает клиентам разворачивать крупномасштабные приложения по работе с данными, кодовая база на довольно странном языке под названием Pony. Когда компания за последние два года открыла весь код, то активно продвигала репозиторий, писала статьи в блогах, раздавала интервью и выступала на конференциях на тему как построить всю кодовую базу на Pony.

Директор по разработке Wallaroo Шон Аллен сказал, что кампания оказалась эффективной: «Многие из тех, кто брали у нас интервью — это люди, которые хотят работать на Pony и [заинтересовались], потому что наша кодовая база является крупнейшей кодовой базой на Pony в открытом доступе».

Представьте свой репозиторий продуктом, а инженеров — целевой аудиторией.

Почему лучшие инженеры выступают за открытый код

«Открывать исходники просто необходимо, если вы хотите нанять лучших людей в отрасли», — говорит технический директор Artsy Даниэль Дубровкин. Он поясняет, что «личные технических бренды стали очень, очень важными для отдельных разработчиков. Инженеры сегодня всё больше хотят открыто демонстрировать свои навыки, а не прятать их. Они хотят работать с открытым софтом, потому что это создаёт им некоторую репутацию».

Для этого Дубровкин решил, что его группы разработки по умолчанию будут работать с открытым кодом, а для отказа от такого стандартного подхода инженер должен чётко объяснить бизнес-причину, почему нельзя публиковать данный код в публичном доступе. В результате, теперь большинство материалов Artsy находятся в свободном доступе (даже материалы по приёму на работу). «Лучшие компании изменяют свои бизнес-требования в соответствии с желаниями индивидуальных разработчиков, которые хотят построить свой личный бренд», — сказал он.

Рекрутинговый отдел Дубровкина теперь использует в качестве маркетингового преимущества тот факт, что инженеры Artsy обязаны публично делиться кодом с указанием своего имени, и такое преимущество справедливо не только для его компании.

«Умные люди любят общаться с другими умными людьми, — писал Том Престон-Вернер, соучредитель GitHub. — Умные разработчики любят работать с умным кодом. Открывая качественные исходники, вы привлекаете талантов».

Автор: m1rko

Источник

* - обязательные к заполнению поля


https://ajax.googleapis.com/ajax/libs/jquery/3.4.1/jquery.min.js