Что такое пэт проект
Pet-проект для джуна. Или зачем и как выбрать pet project. (+личный опыт)
Предисловие
Привет Хабр! Эта публикация написана джуном для джунов (но возможно и специалисты более высокого уровня что-то найдут для себя / своих падаванов).
Зачем нужны pet проекты?
Для саморазвития как разработчика и закрепления изученного материала.
Если Вы днями на пролёт «штурмуете» теорию: читаете посты, смотрите туториалы, но при этом не применяете изученное на практике, то времени на освоение выбранной Вами темы понадобится в разы больше.
Для работающего разработчика pet проект отличная возможность абстрагироваться от рабочих задач и погрузиться в интересную тему. Чаще всего на разработку домашних проектов нет много времени из-за чего код нужно писать быстро и много, а информацию искать по существу не отвлекаясь на лишнее.
Для джуна без постоянного места работы, pet проект заменяет тут самую работу (со стороны разработки). Вы ставите себе задачу/цель и делаете всё возможное что бы её выполнить. При разработке Вы ещё глубже погружаетесь в тему, а иногда находите новые объекты для изучения.
Суммируя pet проекты нам нужны для:
изучения / закрепления нового материала;
получения удовольствия от разработки чего-то интересного лично Вам;
пополнения своего портфолио;
(bonus) есть шанс что Ваш pet проект может кому-то приглянуться и тогда из этого можно получить финансовую выгоду.
Как выбрать и на что обратить внимание?
Я рассматривал этот вопрос со стороны фронтенд разработчика и возможно для других отраслей приведенные ниже тезисы будут не валидны.
Самое главное — разработка должна приносить удовольствие. Технологии, дизайн или что-то ещё не должны вызывать у Вас отвращение, иначе такой pet проект может остановиться на этапе первого коммита.
Технологии
Раз Вы выбрали определенные технологии для своего домашнего проекта, то скорее всего они Вас интересуют и проблема приведенная выше Вас не касается. (Или же Вас заставляют писать на том что Вам отвратно?)
Дизайн
Тут все зависит от человека и ситуации. Есть два варианта:
Запариться и сделать крутейший дизайн.
lvl up как дизайнера;
обычно свой дизайн очень приятен;
так как это собственный макет Вы в нём хорошо ориентируетесь и ещё на этапе дизайна продумываете некоторые фичи.
обычно на это уходит много времени и может получиться ситуация, что макет создавался дольше чем само приложение.
Найти готовый дизайн и работать с ним.
быстро (хотя поиск может затянуться, об этом ниже);
не нужно отвлекаться на дизайн.
не всегда можно найти дизайн для Вашей задумки, особенно если она не типичная;
готовые бесплатные макеты не всегда красивые.
Если авторские идеи не Ваше то на просторах интернета существуют множество тем проектов в которых можно использовать любые нужные Вам технологии.
Вот пару вечно актуальных примеров:
Личный опыт
В этом блоке я раcскажу как придумывались / создавались мои pet проекты.
Начало (AniList)
Шёл июль 2020 года. Спустя семестр изучения JavaScript’а в колледже я решил изучить какой-то фреймворк. Выбор пал на React. Через пару дней ознакомления с фреймворком я наткнулся на серию видеороликов по разработке веб-приложения пиццерии на ютуб канале Archakov Blog. И решил сразу же применять изученное в видео на реальном проекте, но просто переписывать код из видео в IDE было не интересно. По этому я решил делать аниме список.
Выше я писал про два варианта получения дизайна для проекта. Какой же из вариантов выбрал я при создании макета? Оба. Для начала я зашёл на уже существующие сайты с такой-же тематикой потом пролистал Behance и собрал своего «франкенштейна» из собственных идей и кусков уже готовых дизайнов.
Скриншот проекта из Figma
По готовому макету я понял что мне нужно будет где-то брать информацию об аниме (API, AJAX), где-то хранить её (Redux), а также как-то организовать авторизацию и хранение информации о пользователях (Firebase) + работа с версиями файлов(GIT, GitHub). В итоге мне предстояло ознакомиться как минимум с 5 новыми технологиями помимо React.
И в этом я считаю один из плюсов pet проектов. Начиная учить что-то одно, а в конце осваиваешь намного больше чем ожидал.
ToDo list
Следующим проектом должен был стать todo list. Мой одногруппник (тоже начинающий фронтендер) должен был делать frontend на Angular, а я (неожиданно) backend. Тут мне пристояло погрузиться в мир backend’а и может не изучить, но хорошо так ознакомиться с NodeJS, Express, MongoDB, mongoose, cors, dotenv, способами авторизации, деплоем на Heroku и ещё глубже понять работу API.
По итогу вышло так что и я и мой товарищ каждый для себя писали back и front end.
Остальное
Потом было ещё пару проектов. Вкратце напишу что для себя я вынес из них.
Приложение погоды:
рисование на canvas’е;
работа с геолокацией;
анимация React компонентов.
парсинг информации из сайта;
работа с Excel таблицами в NodeJS.
Менеджер подписок:
Магазин аксесcуаров (backend) (в разработке):
более глубоко познал MongoDB + mongoose;
Портфолио (на стадии дизайна):
создание кастомного курсора.
Заключение
Недавно меня постигла идея переписать свой первый pet project (Аниме список), но теперь с новыми навыками: backend на NodeJS, Express, GraphQl вместо Firebase, и frontend React + Apollo Client, ну и дизайн по красивше сделать. Эта мысль является результатом моего прогресcа который я постиг благодаря pet проектам.
«Всякое дело совершенствуется овладением техники. Всякий навык достигается упражнением.» — Гиппократ
Pet-проекты: зачем они нужны, и стоит ли тратить на это время в 2020 году + опрос
Личные проекты для разработчиков и инженеров – важная и интересная тема. В интернете есть множество упоминаний того, как такие проекты приводят к масштабным достижениям – так было в случае нобелевских лауреатов по физике Андрея Гейма и Константина Новоселова, чей эксперимент первоначально состоялся вечером в пятницу, когда ученые по традиции тестировали различные безумные на первый взгляд идеи.
Многие компании также пытаются стимулировать такую активность работников – в Google было правило 20%, которое привело к рождению Gmail, AdSense и Google News, а в Twitter инженеры получали неделю свободную от обычных обязанностей для экспериментов – найти вакансии от столь же продвинутых компаний можно через бота @g_jobbot.
Да что далеко ходить – недавно мы делали вебинар с Android-разработчиком Дмитрием Рязанцевым (вот его статья про работу на Toptal) – запущенную им игру Draw and Ride скачали 250,000 раз, а начиналась она именно как pet-проект. Звучит вдохновляюще, но насколько подход pet-проектов актуален в конце 2020 года? Считают ли до сих пор инженеры наличие таких проектов важным для себя и профессионального развития? С какими проблемами сталкиваются те, кто ими занимается? В новой статьей мы решили найти ответы на эти вопросы.
Зачем нужны pet-проекты: аргументы «За»
Есть целый ряд аргументов, которые всегда приводят сторонники личных хобби-проектов. Вот главные и них.
Pet-проекты приносят удовольствие и позволяют развиваться
Разработчик из Лондона Чанна Джайамуни (Channa Jayamuni) в своей статье на LinkedIn так описывает пользу pet-проектов:
Разработка софта – отнюдь не самая увлекательная профессия до тех пор, пока вам не дали поработать над любимыми задачами. Если вы не работаете в Google или в похожей продвинутой компании с интересными проектами и низким уровнем стресса, то вряд ли ваша работа сплошь состоит из таких задач. В большинстве случаев разработчик может ожидать получить смесь из унылой рутины и относительно неплохих задач. Далеко не всем везет работать с новейшими технологиями в профессиональных средах, чтобы оставаться на острие развития отрасли просто выполняя рабочие обязанности.
По мнению инженера, решить эти проблемы наилучшим образом помогает именно развитие собственных проектов в свободное время.
Личные проекты помогают найти лучшую работу
Многие руководители прямо заявляют о том, что наличие портфолио собственных проектов у инженера – один из ключевых пунктов при найме.
Так директор компании-разработчика открытой NoSQL базы данных RAVENDB Айенде Райен (Ayende Rahien) говорит о том, что при поисках разработчиков смотрит на наличе страсти к работе. По мнению топ-менеджера, у специалистов, которые не могут найти время на развитие собственных проектов, такой страсти нет, они не собираются выходить за рамки рабочих обязанностей. Нанимать таких разработчиков в небольшую команду может быть не лучшей идеей.
Хотите найти работу, на которой пригодятся полученные в ходе запуска pet-проектов навыки? Используйте наш бот @g_jobbot. Его просто и быстро настроить: нужно указать свою сферу и стек технологий, желаемую зарплату, локацию или «релокейт». Подходящие вам варианты будут приходить в Телеграм.
Компаниям выгодно стимулировать эксперименты сотрудников
Майк Миллер (Michael Miller) работает на позиции Engineering Manager в Bloomberg LP и считает, что компании должны официально позволять ведущим специалистам развивать свои проекты в рабочее время, и что такой подход может быть отдельной HR-плюшкой для талантливых работников:
Ваша задача – делать таких ведущих работников максимально счастливыми. Никогда не знаешь, что произойдет, если позволить талантливому специалисту развивать свою страсть. Вполне вероятно, это позволит открыть новую супер-звезду. Понятно, что возможность официально развивать свои проекты нужно заслужить. Если ты едва справляешься с непосредственными обязанностями, то о каких pet-проектах может идти речь?
Что может пойти не так
Несмотря на очевидные плюсы, существует и целый ряд трудностей при работе над дополнительными проектами вне работы. Кто-то называет эти трудности мифами, как инженер Twitter Аннель Де Джагер (Annelle De Jager). Тем не менее, вот как выглядит этот список:
Нехватка времени
Написание кода – творческая работа, которая требует значительного количества сил. Инженерам просто необходимо отдыхать, плюс никто не отменял домашние дела, общение с друзьями и родственниками. В таких условиях найти время еще и на pet-проекты довольно трудно.
Отношения с друзьями и семьей
Пункт частично вытекает из предыдущего. Если у человека есть семья и друзья, а он в какие-то моменты делает выбор не в их пользу, а в пользу написания кода – помимо работы! – но за который ему даже с высокой вероятностью не заплатят – это может выглядеть странно и даже вызывать обиды.
Негативные эмоции в случае неудачи проекта
Что в итоге: немного статистики и опрос
Мы решили прояснить отношение разработчиков к ведению pet-проектов в текущих условиях удаленки и глобальной пандемии. Поэтому мы опросили знакомых инженеров из таких компаний как Gett, «Лаборатория Касперского», Uber, Smartcat и др. и задали им вопросы о том, развивают ли они pet-проекты и с какими трудностями сталкиваются при этом. Вот главные выводы по итогам опроса:
UPD: как к pet-проектам относятся читатели на Хабре
Первые данные нашего опроса позволили нам собрать вот такую интересную статистику. Итак, большинство читателей Хабра ведут pet-проекты:
При этом только треть опрошенных думают заработать на своих хобби-проектах:
Если вы ведете свои pet-проекты, укажите в боте @g_jobbot информацию о своих проектах, чтобы получать вакансии с учетом использованных в них технологий. Новая работа – отличный способ «монетизации» хобби!
Мы будем обновлять информацию по мере поступления новых голосов!
Как приручить pet-проект?
Личные проекты помогают прокачать профессиональные навыки, получить бонус на работе или даже запустить собственный стартап. Рассказываем, зачем компании поощряют внерабочую деятельность сотрудников, и делимся историями студентов, которые занимаются собственными pet-проектами.
Что такое pet-проект?
Pet-проект (pet — англ. «домашний питомец, любимец») — это проект, который разработчик делает для себя, в свободное от основной работы время. Многие популярные сервисы начинались именно так.
В начале нулевых выпускник Стэнфорда Кевин Систром в свободное от работы время разрабатывал приложение Burbn. С его помощью можно было делать фотографии, отмечать геометки, а также делиться заметками. Позже Кевин познакомился с Майком Кригером, и они выложили приложение в AppStore под названием Instagram. А уже в апреле 2012 года Кевин и Майк продали свою разработку Facebook за 1 млрд долларов.
В тех же нулевых студент СПбГУ Павел Дуров в свободное от учебы время создавал некоммерческие проекты, посвященные общественной и научной жизни университета: Durov.com и Spbgu.ru. В октябре 2006 года он зарегистрировал домен vkontakte.ru, а в 2008 году количество пользователей соцсети превысило 20 млн.
Крупные компании часто поощряют внерабочую деятельность сотрудников. Например, в 2004 году в Google запустили «Правило 20%»: сотрудники могли определенную часть своего рабочего времени посвящать личным проектам. Именно так родились Gmail и Google News. Правда, был один нюанс: все разработки сотрудников являлись интеллектуальной собственностью компании. В 2011 году, после прихода Ларри Пейджа на пост гендиректора, сотрудники Google рассказали, что компания фактически отказалась от «Правила 20%». Правда, в самом Google заявляли, что по-прежнему выделяют сотрудникам время на внерабочие проекты.
Плюсы pet-проекта
Минусы pet-проекта
Основные шаги по созданию pet-проекта
Шаг 1. Продумайте идею (гипотезу) проекта, чему он посвящен, какие задачи решает. Про то, откуда брать идеи проектов, мы написали в следующей части.
Шаг 2. Проведите небольшое исследование, чтобы проверить гипотезу. Поймите, на кого будет рассчитан ваш pet-проект, есть ли похожие на него приложения или сайты, какие у них функции. На этом этапе важно собрать обратную связь.
Откуда можно взять данные, чтобы проверить гипотезу
1. Использовать существующие данные (кабинетные исследования):
2. Создать новые данные (полевые исследования):
Шаг 3. Сделайте MVP (minimum viable product, минимально жизнеспособный продукт) — это продукт (или набор действий), направленный на то, чтобы подтвердить ценность будущего продукта для потребителей.
Для чего нужен MVP:
Чтобы собрать обратную связь об MVP, можно провести разные виды тестов:
Шаг 4. Получившийся кейс можно добавить в портфолио либо развивать дальше в полноценный продукт.
Начните свой путь в IT
Освойте разработку, аналитику данных, Data Science или другие востребованные профессии — получите все курсы для входа в IT по цене одного.
Где взять идею для pet-проекта?
Выбор pet-проекта зависит от задачи. Например, есть случаи, когда разработчик пишет свой проект для того, чтобы оптимизировать рабочие процессы. Также с помощью pet-проекта можно практиковать новые навыки, полученные во время учебы.
Мы спросили студентов SkillFactory, как они выбирали темы для своих проектов.
💻 Курс: Fullstack-разработчик на Python
💼 Работает системным администратором в компании, занимающейся угольной промышленностью
🚀 Pet-проект: Автоматизация печати пропусков
« Одна из моих рабочих задач — выпуск пропусков для сотрудников. Это целый процесс: нужно распечатать пропуск из 1С, наклеить на пластиковую карту и “прошить” в базе данных. Мой проект был сделан как замена 1C — я делал его в рабочее и свободное от работы время. Он брал данные для пропуска из корпоративного сайта, проще говоря — парсил, а потом выводил их в HTML-форму. Затем с помощью СSS подгонялся в нужный вид и выводился на печать.
Разработка позволила сэкономить лицензии 1С для компании. Кроме того, инструмент оказался удобнее, чем корпоративная программа, — им пользуюсь я и коллеги».
Используемые технологии: Для парсинга Евгений использовал библиотеки Request и BeautifulSoup4. Для хранения и быстрого доступа — систему управления базами данных Redis, для веб-интерфейса — фреймворк Flask.
💻 Курс: Полный курс по анализу данных
💼 Работает в техподдержке Санкт-Петербургского медицинского информационно-аналитического центра
🚀 Pet-проект: Автоматизация отчетов
«Восемь часов в день я посвящаю работе, а в перерывах или вечером занимаюсь своим проектом. Я очень долго хотел систематизировать сбор и анализ отчетности нашего отдела. Эта задача у нас решалась спустя рукава и каждый раз по-разному. Я подумал, что можно использовать свои новые знания, чтобы сделать систему сбора и хранения информации.
Мне удалось ускорить и упростить сбор и обработку информации, а также быстро создавать актуальные отчеты в виде таблиц и диаграмм. В дальнейшем планирую еще больше автоматизировать процесс построения отчетов. Руководство оценило — поддержало идею и повысило зарплату».
Используемые технологии: Форма сбора информации, созданная из таблицы в Excel; данные обрабатываются с помощью скриптов на Python; информация загружается в базу данных, развернутую на PostgreSQL, потом необходимые данные из базы выгружаются в файл с помощью скриптов на Python; Power BI строит дашборды за нужный период.
💻 Курс: Product Manager
💼 Учится в Томском государственном университете систем управления и радиоэлектроники
🚀 Pet-проект: Сервис психологического тестирования
Используемые технологии: Frontend написан на бесплатном компиляторе Svelte, Backend — на Node.js, а база данных — на MongoDB.
💻 Курс: SQL для анализа данных
💼 Работает бизнес-аналитиком мобильного приложения для банка ВТБ
🚀 Pet-проект: Чат-бот, заменяющий пейджеры в продуктовых маркетплейсах
«Обеды с единомышленниками рождают идеи. Одну из них захотели воплотить, посмотреть, что из этого получится. Мы решили разработать проект, где вместо физических пейджеров, которые уведомляют о готовности заказа, клиент подключается к боту в Telegram. Пока проект находится на этапе релиза MVP и проверки ключевых гипотез. Сейчас основная работа лежит на разработчиках, а в дальнейшем планирую уделять проекту по 4–8 часов в неделю. В будущем команда хочет расширить функционал: чтобы чат-бот мог предлагать клиентам скидки, рассказывать об акциях и собирать обратную связь».
💻 Курс: Product Manager
💼 Работает дата-инженером
🚀 Pet-проект: Айда! — сервис, который помогает искать студии, вечеринки, концерты и уроки танцев в Москве и Санкт-Петербурге.
«Мы начали проект вместе с другом, чтобы развлечься и освоить новые технологии. Первое время работали по выходным, а друг и вовсе был занят проектом 7 дней в неделю. Несколько раз подавались на разные хакатоны и были разные цели, под них добирали людей в команду. Пробовали участвовать в конкурсе ВКонтакте, но нас не взяли, так как наше приложение не подходило под нужный формат. Зато спустя несколько месяцев мы поучаствовали в хакатоне и выиграли проект-заказ от мэрии Казани. Им нужна была туристическая игра по местности. У нас уже была карта, так что мы быстро адаптировались под задачу, взяли в команду знакомого гида и победили. Но потом началась пандемия, и поэтому заказ встал на паузу».
Используемые технологии: VK Mobile APP — это платформа приложений внутри ВКонтакте, MongoDB, Python, Docker.
Делать проект в одиночку или с командой?
Зависит от целей. Работа в команде — это хорошая возможность прокачать свои софт-скиллы и лидерские качества, а также сделать более сложный продукт. Но если проект небольшой, тогда вполне можно заниматься им самостоятельно. Бывает, что человек начинает проект самостоятельно, а по ходу понимает, что хочет его масштабировать и развивать, и набирает команду.
«Пишу сервис основном я одна, иногда помогает молодой человек — он программист».
«Моя часть — это парсинг и база данных. Друг написал frontend и backend. Еще один человек тестирует сервис; был специалист, который занимался сайтом».
Как начать работать над pet-проектом?
Если хочется свой pet-проект, то самый главный совет — просто попробовать сделать первые шаги.
«Тем, кто хочет стартануть, советую сделать это. Код — такая штука, которую всегда можно поменять, поэтому долгие планы и выбор времени тут особо роли не играют. Есть часик, хочется — хоть HTML-страничку сделай, но главное — пиши. Чем больше планов, тем меньше шансов выжить у самого проекта, потому что энтузиазм пропадает довольно быстро».
«Если это первый твой проект, то очень важно начать, даже если не хватает какой-то ключевой роли в команде. Пусть получится плохо, но это опыт, который позволит сделать в следующий раз гораздо лучше. Если проект не первый, то всегда стоит разделять гипотезу и факт. То есть свои ожидания и то, что по факту нужно рынку».
«Делайте, а там как повезет. В любом случае pet-проект — как котик. Он все равно милый и, скорее всего, вам уже нравится».
Найдите свой путь в IT
Освойте разработку, аналитику данных, Data Science или другие востребованные профессии — получите все курсы для входа в IT по цене одного.
Какой пет-проект написать junior-разработчику, чтобы сразу получить работу
Проекты junior-разработчика говорят о его способностях больше, чем резюме. Если вы придумали подходящий проект и защитили его на собеседовании — можете получить работу, несмотря на отсутствие опыта. В Mail.ru Cloud Solutions узнали у работодателей, на что обратить внимание при работе над пет-проектом.
Банальный, но рабочий совет — сначала определитесь, в какой сфере и на какой позиции вы хотели бы работать, только потом делайте проект. Работодатели порой встречаются с неуверенными новичками, которые могут прийти на позицию фронтенд-разработчика и показать движок блога на PHP.
Бессмысленно показывать код простого интернет-магазина в компании, которая разрабатывает ПО для обработки видео или занимается машинным обучением. Хотите заниматься веб-разработкой — покажите веб-приложение, суровым бэкендом — хорошо масштабируемое приложение, которое справляется с большой нагрузкой.
Определитесь, где бы вы хотели работать, например, в банке, медицинской компании или ритейле. Сейчас работодателям важно не только умение писать на конкретном языке, но и общее понимание индустрии. Хотите работать в финансовой сфере — лучше показать на собеседовании сложный инвестиционный калькулятор, а не интернет-магазин по продаже запчастей.
Убедитесь, что пет-проект демонстрирует нужные в вакансии навыки. Например, работодателю требуется знание React, а у вас проект на чистом JavaScript — перепишите его на фреймворке.
Если вы идете на собеседование по Java, то покажите проекты мини-порталов, которые показывают опыт работы с базами данных, разграничением прав, масштабируемостью, алгоритмами. И пусть это будет очередной интернет-магазин, главное, чтобы он был сделан качественно.
Работодатели говорят: для собеседования новичкам можно не оптимизировать код до идеального состояния. Главное — понимать, как все работает и почему вы используете именно эту технологию или функцию, а не какую-то другую.
Можно даже заимствовать чужие решения. Но важно, чтобы вы могли объяснить, как это решение работает.
Будьте честны: если скопировали код и не успели с ним разобраться, то так и говорите. Добавили решение для эксперимента, а раньше использовали другой вариант — расскажите об этом. Хороший специалист с опытом собеседований быстро вычислит обман с помощью пары дополнительных вопросов. Копировать не стыдно, учиться не зазорно, а вот пытаться показать знания там, где их еще нет — некрасиво.
Не проблема, если самостоятельный проект новичка далек от идеала или в нем используют не самые эффективные алгоритмы, считает руководитель отдела разработки компании Aim Алексей Ладейщиков. Пусть в них будет созданная с нуля функциональность, несмотря на то, что в языке уже есть решения «из коробки».
Основная ценность самостоятельных проектов — как раз в таких особенностях. На собеседовании кандидат может показать пути оптимизации кода и продемонстрировать свое развитие как специалиста.
Не нужно в пет-проектах пытаться показать все, что вы умеете. Лучше не превращать код в сборник из десятков библиотек, а использовать несколько решений, понимая концепцию инструментов и принцип их работы.
С помощью пет-проекта можно не только показать работодателю умение кодить или знание фреймворков, но и продемонстрировать, насколько вы готовы к реальной работе.
Показывайте законченный продукт. Полуфабрикаты и код, который “точно будет работать, но вот тут еще нужно дописать”, оставляют негативное впечатление. Демонстрация проекта, который работает без дополнительных манипуляций, покажет, что вы умеете доводить дело до конца.
Если есть возможность, организуйте пространство, где можно “пощупать” ваше творение, например, с помощью сервиса с бесплатным хостингом.
Будьте аккуратны и внимательны. В пет-проекте важно не просто сделать, а продемонстрировать, что вы готовы к полноценной работе по принятым циклам разработки.
Например, полезно будет сначала прописать требования к проекту, сделать спецификации, а только потом писать код. Или написать юнит-тесты, покрыть тестами модули или функции.
За покрытие тестами сразу в рай без очереди. Для меня тесты, особенно от junior-специалистов — показатель того, что разработчик неравнодушен. Человек хочет дополнительно убедиться, что его код работает правильно, он предусмотрел поведение на корнер-кейсах. Важно самому искать ошибки, а не ждать, пока расстроенные пользователи придут к тебе с замечаниями.
DevOps-инженерам сложнее сделать сделать пет-проект, чем программистам. Новичку проблематично даже присоединиться к open source проекту — неопытного человека никто не допустит в архитектуру. Выход — моделировать реальную работу на тестовых проектах.
Начинающему системному администратору или DevOps-инженеру стоит разобраться с Linux, возможно, сделать свою сборку. Написать небольшой проект, например, на популярном среди инженеров Python, построить для него CI/CD. Возьмите тестовый аккаунт в облаке, сейчас очень популярен Kubernetes, и поиграйтесь с CI/CD.
Разработка ПО — командная работа, об этом часто забывают новички, пытаясь сделать домашние проекты. Вместо того, чтобы делать всю работу самостоятельно, попробуйте найти единомышленников. Например, если вы бэкенд-разработчик, не используйте Bootstrap, а отдайте верстку начинающему фронтенд-разработчику. Найти коллег можно на профильных форумах, в тематических Телеграм-чатах или на Хабре.
Работая командой, вы сможете не только попрактиковаться в технологиях, но и получить представление о том, как выглядит реальная работа.
IT-специалист — по большей части командный игрок. HR с большей вероятностью заинтересуется в junior-специалисте, который понимает, как работать в команде.
руководитель проекта по созданию прототипов Zero2Hero и IT-рекрутинговой компании Lucky Hunter