Как заполнить свое портфолио java
Перейти к содержимому

Как заполнить свое портфолио java

  • автор:

Как составить портфолио начинающему программисту

Для большинства разработчиков портфолио — аккаунт на GitHub. Если вы занимаетесь формированием личного бренда, есть и другие варианты: сайт, блог или ютуб-канал.

Не храните на аккаунте только один проект с онлайн-курсов или по туториалам. Переработайте его, добавьте что-то своё, но не забывайте про паттерны и парадигмы. Укажите в README, что и почему модернизировали.

Один проект ≠ Портфолио

Больше всего ценятся pet-проекты, которые сделаны с нуля, поддерживаются и используются в продакшене. Одному и без опыта сделать их будет сложно, но в этом и смысл. Выберите тему, которая вам нравится. Например, кошки — создайте симулятор для котиков, которые будут лапкой ловить мышь. Если вы сейчас делаете ремонт, сделайте приложение для контроля выполнения работ или агрегатор скидок на строительные материалы в вашем городе. При реализации проекта с нуля вам помогут различные template/layout репозитории по нужному направлению. Их можно взять за основу.

Также не помешают личные эксперименты в разработке. Например, свой язык программирования или фреймворк ? Вы не только расширите портфолио, но и разберётесь, как всё устроено под капотом.

Большим бонусом в портфолио будет участие в опенсорс-проектах. Можно начать с утилит и фреймворков, которыми пользуетесь. Наверняка среди них найдутся проекты, открытые для новичков. Это принесёт не только опыт, но и полезные знакомства.

Как портфолио поможет при устройстве на работу

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

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

Также будьте готовы, что посмотрят и другие ваши репозитории. Обратят внимание на соблюдение git-flow, вашу вовлечённость и регулярную поддержку пет-проекта.

Если претендуете на высокие позиции, актуальный аккаунт тоже не повредит. Если текущие проекты под NDA, то попробуйте их обезличить. Так вы можете избавить себя от технических вопросов и свести собеседование к разговору по интересам.

В итоге

Как составить портфолио начинающему разработчику, чтобы оно приносило пользу:

  • держите портфолио в актуальном состоянии;
  • добавьте pet-проекты, по которым оценят опыт, целостный подход, архитектуру, best-practice, CI/CD и инфраструктуру;
  • включите экспериментальные проекты и мелкие утилиты, участие в опенсорс-проектах;
  • дополните всем, что покажет ваши интересы, стремление к развитию и кругозор.

Портфолио: стажировка в открытых проектах — Трудоустройство для разработчиков

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

Чтобы собрать портфолио, разработчики участвуют в открытых проектах. Это хорошая возможность работать в той области программирования, в которой вам комфортно и интересно.

В этом уроке поговорим о том, что такое Open Source проекты и как они помогают разработчикам. Также разберем типы специалистов, которые могут участвовать в таких проектах, дадим список Open Source и объясним, как с ними работать.

Что такое Open Source проекты и зачем они нужны

Если вы решили создать или пополнить свое портфолио, то в этом поможет Open Source — проекты с открытым исходным кодом, которые может разрабатывать и развивать любой желающий.

Например, в них можно доработать программу, проверить ее безопасность или создать собственную.

Open Source проекты помогают закрыть сразу несколько потребностей программиста:

  • Набраться практического опыта. HR-специалисты рассматривают разработчиков только с опытом. Open Source проекты помогут наполнить портфолио, даже если у вас нет работы в данный момент
  • Прокачать хард скиллы. Если вам не хватает практики или вы только учитесь, Open Source проекты помогают наработать навыки и отточить мастерство. Для этого нужно регулярно участвовать в них
  • Быстро трудоустроиться. Так как Open Source проекты помогают наполнять портфолио, вас с большей вероятностью возьмут на работу. В этом случае скорость трудоустройства увеличивается, так как работодатели смотрят в первую очередь на практические проекты
  • Стать заметным в комьюнити разработчиков. Участие в Open Source проектах помогают получить не только признание и уважение среди коллег. Еще с их помощью можно проработать софт скиллы, которые сейчас тоже важны при трудоустройстве
  • Понять сложность реальных проектов. Open Source проекты — это реальные проекты, которые сложнее, чем учебные. В них много взаимосвязей, сущностей и чужой код, в котором нужно разобраться

Open Source проекты развивают разработчиков с разных сторон. При этом нужно понимать, кто может участвовать в открытых проектах и как они помогают в конкретных случаях.

Кто может участвовать в Open Source проектах

Open Source проекты полезны всем, кто занимается разработкой или только интересуется ею:

  • Новички
  • Студенты
  • Специалисты

Разберем подробнее каждую категорию и приведем примеры подходящих для них Open Source проектов.

Новички

Если у вас нет опыта и вы только начинаете путь в программировании, вы все равно можете участвовать в открытых проектах. При этом совсем без знаний не обойтись.

Чтобы участвовать в открытых проектах, вам нужно изучить механику Git и базовые навыки работы в командной строке. Еще во многих проектах используется Docker — программа, с помощью которой можно запускать процессы в изолированной среде. Подробнее о нем в гайде «Как и для чего использовать Docker».

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

Студенты

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

Чтобы не затягивать с развитием в программировании и трудоустройством, можете участвовать в Open Source проектах во время обучения. Например, прошли урок — нашли подходящий по теме проект — выполнили его. Так вы сможете сразу на реальном проекте закрепить полученные знания и навыки.

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

Специалисты

Если вы уже работаете над реальными задачами, и у вас отлично получается, это не значит, что вам не нужно развивать новые скиллы.

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

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

Если вы определились, к какой категории пользователей относитесь и какие навыки хотите прокачать, можно переходить к выбору проекта.

Какие есть Open Source проекты

Open Source проекты развивают сообщество вокруг них. Например, проект Git, которым пользуются многие разработчики. Они не только набираются опыта, но и помогают проекту развиваться — находят и исправляют ошибки, вносят предложения.

Студентам Хекслета не нужно искать Open Source проекты, так как здесь уже все есть. В Хекслете множество проектов с открытым кодом на разный уровень разработчика и область программирования.

В таблице ниже полный перечень Open Source проектов Хекслета с задачами:

Open Source проект Задачи
Hexlet Guides — сайт, где размещаются гайды для новичков. Ссылка на сайт. Улучшить текущие гайды, обновить информацию, добавить новые гайды, обновить движок для гайдов
Code Basics — бесплатный проект для обучения основам языков программирования. Ссылка на сайт. Улучшить существующие уроки, улучшить сайт, создать уроки для новых языков, перевести уроки на английский язык
Codebattle — проект, в котором два программиста соревнуются, кто быстрее выполнит одну задачу на разных языках программирования. Ссылка на сайт. Участвовать в разработке сайта, добавить новые соревновательные задачи, участвовать в разработке Chrome расширения
Hexlet Резюме — проект для соискателей и HR-специалистов. В проекте используется Ruby on Rails. Ссылка на сайт. Сделать фильтрацию резюме по направлениям, скрыть комментарии от гостей, расширить лимит комментария-ревью под резюме, перевести сайт, добавить Markdown редактор для визуального редактирования
Hexlet SICP — сервис для тех, кто изучает книгу «Структура и интерпретация компьютерных программ». На нем можно отслеживать свой прогресс и соревноваться с другими пользователями. Ссылка на сайт. Добавить тесты в упражнения, обновить проект под новые Laravel-реалии, исправить баги, добавить таймер для показа решения учителя, добавить линтер для JS кода, проверить внешние ссылки на книгу
Hexlet Correction — сервис уведомления владельцев сайтов об ошибках и опечатках. В проекте используется Java. Сделать виджет для вставки на сайты пользователей, добавить аутентификацию, скрыть воркспейсы от пользователей
Hexlet Friends — сервис для отслеживания Open Source проектов Хекслета. В проекте используется Python. Ссылка на сайт. Участвовать в разработке сервиса
Hexlet Runit — среда, где пишут и исполняют код, который используется на платформах Хекслета. Бэкенд разрабатывается на NestJS и TypeScript, на фронтенде используется React. Участвовать в разработке сервиса
Hexlet Comparator — сервис, где сравниваются онлайн-школы программирования. Работает на NextJS и React. Ссылка на сайт. Участвовать в разработке сервиса, заполнять информацию о школах

Теперь разберем, как работать с этими проектами.

Как работать с Open Source проектами

Задачи и специфика каждого Open Source проекта отличаются. При этом у них есть общие шаги:

  • Выбор задачи
  • Решение проблем
  • Трудоустройство

В этих случаях работа с Open Source проектами происходит одинаково. Рассмотрим каждый этап подробнее.

Выбор задачи

Выберите из списка выше проект, задачи и тема которого вам подходят. Далее перейдите по ссылке.

У каждого проекта есть файл README, где можно найти всю информацию о нем, а также руководство, как развернуть его у себя на компьютере:

По описанию вы поймете, готовы ли вы взяться за проект.

В каждом репозитории проекта есть вкладка Issues:

Здесь увидите список багов или задач, с которыми можно работать.

Если нашли подходящую задачу, оставьте комментарий, что готовы ее выполнить и приступайте к работе:

Если вы передумали работать с задачей, то сообщите об этом.

Решение проблем

На любом этапе работы с открытыми проектами вам может понадобиться помощь. Вот наиболее частые проблемы, с которыми можно столкнуться в открытых проектах:

  • У проекта нет описания
  • Вы не понимаете, актуальна задача или нет
  • В разделе Issues нет задач — это не всегда значит, что их точно нет
  • Возникли сложности, когда выполняли задачу

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

Общение с коллегами не только решает вашу проблему относительно Open Source проектов. Одновременно с этим, вы развиваете свои софт скиллы, которые ценятся работодателями.

Компаниям важно, чтобы разработчик умел не только хорошо выполнять поставленные задачи, но коммуницировать с командой.

Трудоустройство

Участие в Open Source проектах не обязывает разработчика трудоустраиваться. Возможно, он делает это, чтобы применить прокаченные навыки в проекте, в котором уже работает.

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

Аккаунт на Github — это удобно, так как вам не нужно собирать все проекты самостоятельно и выкладывать их на стороннем ресурсе. Достаточно скинуть HR-специалисту ссылку на личный кабинет, где он увидит всю необходимую информацию о разработчике и его портфолио.

Open Source проекты — это отличная возможность для программистов, у которых нет опыта в крупных проектах или компаниях, заявить о себе и найти работу. Если вы будете участвовать в открытых проектах, то вас вряд ли будут пугать вакансии, на которые не берут без опыта.

Вывод

Мы разобрали, что такое Open Source проекты и как они помогают разработчикам. Также рассмотрели типы специалистов, которые могут участвовать в таких проектах, дали перечень Open Source и объяснили, как с ними работать.

Open Source помогает набраться практического опыта, прокачать хард скиллы, трудоустроиться, стать заметным в комьюнити разработчиков и понять сложность реальных проектов

Они полезны всем, кто занимается разработкой или только интересуется ею — от новичков до специалистов.

Если у вас возникнут вопросы по Open Source проектам, обращайтесь в телеграм-канал Хекслет .

Дополнительные материалы
  1. Как участвовать в жизни Хекслета
  2. Как участвовать в open source проектах
  3. Практика в опенсорс-проектах
  4. Зачем нужен Git
  5. Как присоединиться к работе над опенсорсом
  6. Codebattle, или Как опенсорс-проект даёт опыт программирования и помогает строить карьеру

Аватары экспертов Хекслета

Остались вопросы? Задайте их в разделе «Обсуждение»

Вам ответят команда поддержки Хекслета или другие студенты

Об обучении на Хекслете

  • Статья «Как учиться и справляться с негативными мыслями»
  • Статья «Ловушки обучения»
  • Статья «Сложные простые задачи по программированию»
  • Урок «Как эффективно учиться на Хекслете»
  • Вебинар « Как самостоятельно учиться »

Открыть доступ

Курсы программирования для новичков и опытных разработчиков. Начните обучение бесплатно

  • 130 курсов, 2000+ часов теории
  • 1000 практических заданий в браузере
  • 360 000 студентов

Наши выпускники работают в компаниях:

Собираем портфолио для джуна: пет-проект

Собираем портфолио для джуна: пет-проект

Пет-проект – это собственный, «домашний» проект разработчика, который демонстрирует его владение различными инструментами и технологиями и может рассказать работодателю гораздо больше, чем резюме. Зачастую это еще и любимое детище программиста, которое может превратиться во что-то поистине великое. Не все, например, знают, что почтовый сервис Gmail вырос именно из пет-проекта.

Поговорим о том, как сложность проекта зависит от квалификации его создателя, как найти идею и воплотить ее в жизнь, как создать качественное портфолио.

Для разных уровней специалистов – разные проекты

Пет-проекты чаще всего ассоциируются с деятельностью джунов, собирающих портфолио для собеседования. В таком формате начинающий разработчик может показать все свои умения и навыки и произвести наилучшее впечатление на работодателя. Для этого обычно достаточно нескольких простых разработок, объединенных в общее портфолио: Telegram-бот, to-do-list, калькулятор, несложная игра и т. д. Например, мой сайт, с которым я получил пять офферов из первых шести собеседований на позицию джуна, выглядел так.

Для мидла пет-проект также не является чем-то чуждым. Он может убедительно показать, что специалист готов взяться за реализацию какой-то более-менее крупной разработки и грамотно довести ее до конца. На этом этапе не стоит взваливать на себя слишком амбициозный проект, требующий более серьезной квалификации и опыта, – вроде социальной сети. Лучше выбрать менее громкую, но полезную идею, которую вы сможете воплотить в жизнь красиво и целостно. Например, это может быть сервис для укорачивания ссылок. Для начала делаем простой бэкенд и фронтенд. Если получилось, можно двигаться дальше: усложнить программный код, внедрить Docker, подсчитать максимальную нагрузку, при которой сервис сможет корректно функционировать, наладить CI/CD и тестирование.

Для сеньоров пет-проекты на собеседованиях редко являются необходимостью, однако их наличие станет несомненным преимуществом. Можно взять разработку, сделанную на уровне мидла, и масштабировать ее, внедрить лучшие практики написания кода, провести рефакторинг. Если решитесь на создание более серьезного проекта, стоит иметь в виду, что от senior-специалиста ожидают демонстрации всех возможных навыков.

Рассчитывайте на то, что этот проект окажется долгим в создании. Например, год назад я, уже будучи старшим разработчиком, начал очередной пет-проект, которому посвящал всё свободное время. И только через полгода у меня был готов MVP.

Как новичку в IT собрать первое портфолио

Часто после просьбы показать репозиторий (это презентация твоего проекта на любой платформе), начинающий специалист теряется и толком не знает, что это, что там должно быть и как оформить свое портфолио.

Именно поэтому написана данная статья — чтобы помочь тебе корректно заявить о себе и получить крутую должность.

Портфолио новичку в IT: зачем оно нужно

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

Поскольку портфолио размещается на публичной площадке, тебя могут «схантить» (т.е. нанять) просто потому, что твой код сайта или определенное решение по части функционала понравилось рекрутеру. Это как бы пассивный поиск работы (хотя это больше касается специалистов уровня middle — всегда помни об этом).

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

Портфолио производит впечатление наряду с резюме. Каким будет это впечатление, зависит только от тебя. Сам факт наличия работ не так важен, если работы не качественны и обновляются нерегулярно. Именно поэтому важно знать, как оформить портфолио новичку в IT.

Портфолио новичку в IT: каким бывает и как правильно оформить?

В вопросе, как сделать портфолио начинающему специалисту, а также для фрилансера, огромное внимание стоит уделить площадке.

Вот список сервисов, которые призваны облегчить тебе жизнь (и рекрутеру тоже):

  • программисту и всем, кто пользуется кодом: GitHub и Bitbucket
  • дизайнеру/копирайтеру: Behance и Dribbble
  • разработчику игр: Steam или Desura.

Правильное портфолио: как разместить

Процесс размещения на них работ примерно одинаковый. Как это сделать, разберем на примере Git.

  1. Регистрируемся на GitHub.com . Процедура простая, не будем детализировать.
  2. Создаем первый репозиторий — жми на значок + в верхнем правом углу, а затем выбери New repository.
  3. Придумай имя репозитория и добавь короткое описание проекта.
  4. Поставь галочку в нужном боксе: открытый/закрытый доступ.
  5. Нажми Initialize this repository with a README для добавления README-файла. В будущем советуем добавлять этот файл в каждый репозиторий.

Что такое README-файл? Это документ, в котором содержится информация для понимания и запуска проекта. Разумеется, ты пропишешь ее самостоятельно, чтобы работодатель не разбирался 3 часа, как пользоваться твоим приложением.

  • О чём проект?
  • Зачем этот проект? Например: «I mastered CSS animations, CSS Grid, CSS Flexbox» (пункты, разумеется, оформить отдельными буллет-поинтами).
  • Ссылка на демо-верси или полноценный продукт.
  • Инструкции по сборке и запуску проекта
  • Структура сайтов, архитектура приложения — это тоже показывает навыки, необходимые разработчику.
  • Цель этих пунктов не просто объяснить рекрутеру работу, но и показать отношение к документированию, а также базовые навыки подготовки документации. На начальных этапах это особенно важно.

Правильное портфолио: на что смотрят рекрутеры?

  1. Как много времени уделяется разработке и кодингу. Если последний репозиторий был создан месяцев 5 назад, это говорит о том, что кандидат не совершенствует свои навыки на регулярной основе.
  2. Качество кода. Он должен быть чистым и ясным к прочтению.
  3. Внимание к деталям. Особенно это касается ведения документации, которая помогает всем участникам команды одинаково воспринимать и понимать проект.
  4. Профессиональный уровень в целом. Вряд ли работодателя впечатлит десяток твоих ДЗ с демонстрацией применения классов. Поэтому ученические задания — табу.

Эти советы актуальны и в вопросе, как правильно оформить портфолио фрилансеру, а не только кандидатам в штат.

Правильное портфолио: возможные сложности

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

Портфолио новичку в IT: как и где собрать

1. Как сделать правильное портфолио, если его нечем заполнять? Проблема касается всех творческих профессий: нет портфолио — нет работы, нет работы — нет портфолио. Но есть несколько способов, как это исправить:

2. Проект для себя. Попробуй автоматизировать свои рутинные рабочие операции. Например, напиши приложение для заметок или оценки твоей физической активности по км, шагам и прочим параметрам.

3. Проект для друзей или знакомых. Если твоя подруга печет крутые торты, предложи ей сайт с ассортиментом товара.

4. Проект для выдуманного клиента. Сформируй какую-нибудь потребность для бизнеса, например, создать корпоративный сайт для школы пловцов с подключением инструментов отслеживания конверсии.

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

6. Конкурсы. Просматривай сайты и соцсети серьезных компаний, в которых тебе хотелось бы работать. Часто они выкидывают конкурсы и иногда стажировки. Еще хороший вариант: паблики для разработчиков, Telegram-каналы. Подпишись и отслеживай новости.

7. Проект известной студии или дизайнера. GitHub хорош тем, что развивает насмотренность. Посмотри, что есть такого у конкурентов, что ты мог бы сделать лучше.

8. Собственный проект. Хочешь создать платформу для творческих профессий? Тебе интересна сфера кинематографа и ты хочешь помочь специалистам находить друг друга? Кажется отличная идея для создания ресурса/сайта/форума или что это будет?

9. Решение реальной проблемы. Например, тебе не нравится, что логистика Uber Shuttle не предусматривает обслуживания некоторых районов твоего города. Проанализируй поток пассажиров в районах и предложи рациональное решение проблемы. Кейс касается деятельности Data Analyst, Business Analyst.

Как сделать портфолио: чеклист

Чтобы тебе было проще решить, как оформить портфолио, помни об этих пунктах:

  1. Освой площадки для создания портфолио.
  2. Выбери подходящую площадку и выложи на него свой первый проект.
  3. Найди еще пару проектов из оговоренных источников
  4. Заполни документацию проектов.
  5. Покажи свои работы кому-то из сообщества для получения фидбека и накопления опыта.
  6. Создай сайт-визитку после 5 крутого проекта, то точно усилит впечатление от твоего портфолио.

Вывод

Теперь ты знаешь, как оформить портфолио «штатника», как сделать портфолио фрилансера — один и тот же несложный алгоритм. И пусть вначале все кажется сложным, стоит поработать с GitHub лишь однажды — он точно станет твоим лучшим другом на годы.

Популярные статьи

  • Разбудить своего внутреннего айтишника: интервью со студенткой онлайн-курса
  • Как стать SMM-специалистом?
  • Как стать Game Developer?
  • Как стать тестировщиком?
  • С чего начать изучать JavaScript новичкам?

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *