Портфолио

Что такое портфолио

Портфолио — это сборник ваших лучших работ. Таких, какими хочется как бы похвастаться. Для учебного опыта — это учебные работы: «Смотрите, я сам научился и сделал, и вот как здорово получилось!» Да, может они не очень сложны, но это действительно ваши лучшие работы.
Для разработчика роль портфолио выполняет код. Можно давать и ссылки на проекты, над которыми вы работали. Их логично указать в резюме при перечислении проектов. Но вы не дизайнер, чтобы конечный вид проекта говорил о вашем уровне. Самое важное — код.

Как и где оформить портфолио

GitHub — лучший вариант для размещения примеров кода и проектов. Ближайшие альтернативы: Gitlab и Bitbucket. Напишите README-файл к каждому вашему проекту. Что в нём должно быть:
  1. Заголовок-название.
  2. Описание, что это за проект. Какой функционал выполняет, какую боль закрывает, зачем вы его делали. Упражнялись с новой библиотекой — так и напишите. Здесь же можно указать стэк, если используется много технологий разом.
  3. Инструкция по развёртыванию и системные требования (версия языка, нужные для работы проекта расширения). Чтобы можно было запустить код у себя и проверить, что он действительно работает.
  4. Планы по доработке проекта, если они есть, и если вы их действительно осуществите. Не общее «сделать рефакторинг», а «исправить X с помощью Y, чтобы получить Z». Чем конкретнее — тем лучше.
  5. Можно добавить ещё много всего: обширную документацию проекта; настройку CI для его запуска; список людей, которые над ним трудились. Это касается уже крупных проектов и не нужно для первых учебных примеров кода.

Советы

  1. Репозитории с проектами нужно сделать открытыми.
  2. Любой выложенный проект должен быть рабочим и выполнять заявленные функции. Нельзя, чтобы ваше приложение-калькулятор не складывало 2+2. Или ломалось при возведении в степень, когда для этого есть специальная кнопка.
  3. Если проект в портфолио — это сайт, в репозитории с кодом можно разместить ссылку на демо этого сайта. Так работодателю не придётся клонировать репозиторий. Сервис Github Pages позволяет разметить один сайт. Если проектов в портфолио несколько, для размещения сайтов можно использовать бесплатные сервисы: https://surge.sh или https://zeit.co/now . Ссылку на демо добавьте в шапку репозитория на Github. Вот пример хорошо оформленного репозитория: https://github.com/gribnoysup/react-yandex-maps
  4. В коде нельзя оставлять комментарии вида «??? почему-то не работает». Комментарии должны быть конструктивными и полезными. Конструктивный комментарий может быть двух видов:
    • внутренняя документация кода, объясняющая, что происходит в конкретной строчке. Это нужно только в случае, если в такой строчке происходит магия, с трудом прослеживающаяся из предыдущего кода.
    • заметка о развитии проекта: что и как планируется поменять в каком-то куске.

Примеры

На гитхабе есть целый раздел, в котором можно подсмотреть примеры оформления различных опенсорс-проектов: https://github.com/explore

Чеклист

  1. Убедитесь, что ваши проекты работают и выполняют базовые заложенные в них функции.
  2. Загрузите в аккаунт на Github/Gitlab/Bitbucket ваши проекты.
  3. Проверьте, что в коде нет лишних комментариев.
  4. Оформите ридми для каждого проекта:
    • Заголовок;
    • Описание;
    • (опционально) Планы по доработке, если они есть.
  5. Пройдите сами инструкцию по развёртыванию. Проверьте, что программы правильно работают, а в конфигах нет опечаток, которые всё ломают.
  6. Откройте репозитории с проектами, если на время проверок они были закрыты.
  7. Укажите ссылки на репозитории с проектами в описании учебного опыта в резюме.

Домашнее задание

https://forms.yandex.ru/u/5ecf80717b5d1f0094003def/