Найти тему
Geek Export

Как написать крутое README в GitHub для поиска работы

Оглавление

Во время поиска работы компании смотрят на резюме, LinkedIn и на портфолио. Для большинства IT специалистов это также репозиторий на GitHub/BitBucket/GitLab. Там можно выложить свой код публично для всех. 

Все то, что мы делаем в свободное время, в том числе учебные проекты, может быть превращено в репозиторий на GitHub. Первое, что видит человек, который заходит по ссылке - это README.md файл. В этой статье поговорим о том, что сделает его понятным и привлекательным для нанимающих менеджеров, тим лидов и других заинтересованных представителей компаний.

Идея и код могут быть гениальны, но перед тем, как их увидеть - нужно понять, что же хотел показать автор. Например, тэги репозитория экономят кучу времени для технических специалистов, которые будут просматривать GitHub.
Важные разделы любого проекта для Readme в GitHub в минимальной комплектации:

  • Шапка (без раздела, в самом начале)
  • Идея и мотивация (Idea and Motivation)
  • Демо-версия (Demo)
  • Технологии/Фреймворки использованные в проекте (Technologies and frameworks used)
  • Установка (Installation)
  • Лицензия (License)

Шапка

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

-2

Идея и мотивация

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

Именно поэтому стоит начать с концепции и идеи. Объяснить в двух предложениях, какая проблема решена, рассказать зачем это было сделано. Всегда нужно помнить, что проект могут просматривать люди с разным техническим пониманием. Но их может заинтересовать идея или реализация, которые откроют доступ к новым возможностям и нетворкингу в виде Issues или Pull Requests.

Демо-версия

Почти все, что мы делаем можно презентовать в том или ином виде, так как питчинг своего проекта это жизненно важный навык. Если проект это код для сайта - прикрепите пару скриншотов и ссылку на него. Вообще в этом разделе нужно выложить развернутую версию кода, иначе же неинтересно.

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

Технологии/Фреймворки 

Ключевой момент для технического проекта это начинка Тут нужно начинать с ключевых технологий и двигаться от самой важной. Можно на первое место поставить язык программирования, потом уже сервис для развертки, CI/CD, а дальше уже фреймворки, линтеры и форматтеры кода. В случае с ботом в Telegram будет вот так:

Установка

Всегда есть шанс, что посетители заинтересуются проектом и захотят запустить его на своей машине. Для этого нужно предусмотреть раздел “установка”. В нем стоит написать руководство о том, как же запустить проект локально для Dev окружения. Бонусом будет объяснить как задеплоить в облако.

Еще одна важная особенность. Не забудьте о том, что не все сидят с вашего любимого дистрибутива Linux. Поэтому есть смысл описать установку и для других операционных ОС. Например, будет не лишним указать установку для MacOS и Windows. Если нет понимания как это делать на этих системах, то обратитесь за помощью с описанием установки к друзьям или в чат телеграма.

Лицензия

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

Когда проект уже наберет некоторую известность и начнется движение в сторону увеличения активности в репозитории, то уже стоит обратить внимание на Apache 2.0. В ней рассмотрены патентные дела, а сама лицензия требует файла с определенным контентом.

Создать свой репозиторий это основной инстинкт любого разработчика, который начинает свой хобби или сайд-проект. Это самый правильный и простой способ показать миру свои интересы и компетенции. Для начинающих специалистов без опыта GitHub и вовсе выходит на первый план. Также он пригодится и фрилансерам, которые ищут временные контракты или хотят работать на Upwork, Toptal или других биржах. README в читаемом формате стоит сделать для каждого своего публичного проекта, чтобы собрать материал для портфолио, которое не стыдно показать будущим работодателям.

Что выкладывать в публичный доступ? Учебные проекты, хобби-проекты, репозитории с хакатонов, код для персонального сайта. Попробуйте решить какие-то задачи, с которыми сталкиваетесь. Также имеет смысл спросить менеджера о том, можно ли выложить в открытый доступ утилиту или тулзу из проекта.

Все готово. Теперь у нас есть готовое портфолио для поиска работы в Европе, США и других странах. Осталось только оставить ссылку на свой GitHub профиль, в котором есть фото, описание, ссылка на сайт или блог, а также Pinned репозитории. Они должны быть самыми чистыми и красивыми для стороннего посетителя.  

Присылайте свое резюме со ссылкой на GitHub - мы сделаем бесплатный аудит, в ходе которого обсудим проекты и портфолио.