Портфолио
Что такое портфолио
Портфолио — это сборник ваших лучших работ. Таких, какими хочется как бы похвастаться. Для учебного опыта — это учебные работы: «Смотрите, я сам научился и сделал, и вот как здорово получилось!» Да, может они не очень сложны, но это действительно ваши лучшие работы.
Для разработчика роль портфолио выполняет код. Можно давать и ссылки на проекты, над которыми вы работали. Их логично указать в резюме при перечислении проектов. Но вы не дизайнер, чтобы конечный вид проекта говорил о вашем уровне. Самое важное — код.
Как и где оформить портфолио
GitHub — лучший вариант для размещения примеров кода и проектов. Ближайшие альтернативы: Gitlab и Bitbucket. Напишите README-файл к каждому вашему проекту. Что в нём должно быть:
- Заголовок-название.
- Описание, что это за проект. Какой функционал выполняет, какую боль закрывает, зачем вы его делали. Упражнялись с новой библиотекой — так и напишите. Здесь же можно указать стэк, если используется много технологий разом.
- Инструкция по развёртыванию и системные требования (версия языка, нужные для работы проекта расширения). Чтобы можно было запустить код у себя и проверить, что он действительно работает.
- Планы по доработке проекта, если они есть, и если вы их действительно осуществите. Не общее «сделать рефакторинг», а «исправить X с помощью Y, чтобы получить Z». Чем конкретнее — тем лучше.
- Можно добавить ещё много всего: обширную документацию проекта; настройку CI для его запуска; список людей, которые над ним трудились. Это касается уже крупных проектов и не нужно для первых учебных примеров кода.
Советы
- Репозитории с проектами нужно сделать открытыми.
- Любой выложенный проект должен быть рабочим и выполнять заявленные функции. Нельзя, чтобы ваше приложение-калькулятор не складывало 2+2. Или ломалось при возведении в степень, когда для этого есть специальная кнопка.
- Если проект в портфолио — это сайт, в репозитории с кодом можно разместить ссылку на демо этого сайта. Так работодателю не придётся клонировать репозиторий. Сервис Github Pages позволяет разметить один сайт. Если проектов в портфолио несколько, для размещения сайтов можно использовать бесплатные сервисы: https://surge.sh или https://zeit.co/now . Ссылку на демо добавьте в шапку репозитория на Github. Вот пример хорошо оформленного репозитория: https://github.com/gribnoysup/react-yandex-maps
- В коде нельзя оставлять комментарии вида «??? почему-то не работает». Комментарии должны быть конструктивными и полезными. Конструктивный комментарий может быть двух видов:
- внутренняя документация кода, объясняющая, что происходит в конкретной строчке. Это нужно только в случае, если в такой строчке происходит магия, с трудом прослеживающаяся из предыдущего кода.
- заметка о развитии проекта: что и как планируется поменять в каком-то куске.
Примеры
На гитхабе есть целый раздел, в котором можно подсмотреть примеры оформления различных опенсорс-проектов:
https://github.com/explore Чеклист
- Убедитесь, что ваши проекты работают и выполняют базовые заложенные в них функции.
- Загрузите в аккаунт на Github/Gitlab/Bitbucket ваши проекты.
- Проверьте, что в коде нет лишних комментариев.
Оформите ридми для каждого проекта:
- Пройдите сами инструкцию по развёртыванию. Проверьте, что программы правильно работают, а в конфигах нет опечаток, которые всё ломают.
- Откройте репозитории с проектами, если на время проверок они были закрыты.
- Укажите ссылки на репозитории с проектами в описании учебного опыта в резюме.
Домашнее задание