Поиск работы для разработчика без опыта часто становится сложной задачей. Карьерный трек в Хекслете помогает найти работу, а участие в стажировке повышает шансы на трудоустройство. Рассказываем истории четырех студентов, которые прошли стажировку на проектах Хекслета SICP и Code Basics: получили реальный опыт программирования и использовали его для поиска первой работы.
Стажировка — важный этап между обучением и поиском первой работы. Хотя на курсах Хекслета есть четыре довольно сложных учебных проекта, они не дают полного представления о задачах, которые программисту предстоит решать в коммерческой разработке. Стажировка помогает на практике закрепить полученные знания, получить навыки командной разработки (самостоятельно разбираться в задаче, читать чужой код и работать с Git) и научиться распределять рабочую нагрузку. Зачастую рабочие процессы на стажировке не отличаются от процессов в реальном проекте — другими словами, она помогает понять, как работают IT-компании изнутри.
У Хекслета есть собственные программы стажировки — это опенсорс-проекты, принять участие в которых может любой студент. Например, это Hexlet SICP и Code Basics, о которых пойдет речь в этом тексте.
Hexlet SICP — сервис для тех, кто изучает книгу «Структура и интерпретация компьютерных программ» (СИКП). Он позволяет отслеживать прогресс в изучении, следить за рейтингом других пользователей и делиться результатами пройденных испытаний.
Code Basics — полностью бесплатная платформа для изучения основ программирования с нуля с практикой в браузере.
Бэкенд-разработчик, PHP
Стажировку на SICP я начала после сдачи четвертого проекта на PHP. Хотелось закрепить полученные знания и убедиться, что я что-то могу. Искать работу сразу после обучения было страшно — не хватало уверенности, что полученных знаний достаточно.
Помогает понять сложность реальных проектов. Реальные проекты гораздо сложнее, чем учебные: в них множество взаимосвязей, сущностей и чужой код, в котором нужно разобраться. Все это требует определенных навыков, которые нужно нарабатывать. Стажировка дает такую возможность. Кроме того, можно прокачать свои soft skills, погрузиться в атмосферу разработки и понять логику постановки задач.
Помогает адаптироваться к процессам разработки. На первой работе особенно остро чувствуется принцип time-to-market, особенно в условиях жесткой конкуренции среди начинающих разработчиков. Работодатель не будет ждать полгода, пока новичок адаптируется — выполнять задачи нужно качественно и в срок. По сути, стажировка — онбординг для первой работы, возможность пройти этап адаптации сравнительно безболезненно.
Задачи были не сложные — сложнее было понять, как устроен проект и как правильно выполнить задачу, не сломав ничего в коде. Разобраться с этим помогал Николай Гагаринов, куратор опенсорс-проектов в Хекслете. Всего я сделала четыре пул реквеста — этого оказалось достаточно, чтобы почувствовать уверенность в своих силах.
Читайте также: Как сохранять фокус на протяжении всего обучения: советы от Хекслета
Фронтенд-разработчик, JavaScript, Simple Code
Стажировку я проходил конце 2020 года — после того, как сдал последний учебный проект. Перед поиском основной работы хотелось набраться опыта и я выбрал проект на Code Basics, бесплатной платформе Хекслета для обучения программированию с нуля.
Фокус стажировки на Code Basics был сделан не на техническую сложность задач, а на командную работу: взаимодействие между разработчиками и опыт с GitHub.
На первой работе разработчик почти сразу получает задачи, связанные с GitHub. Без опыта взаимодействия с сервисом будет сложно — стажировка помогает в сравнительно спокойных условиях разобраться с созданием веток, настройкой SSH-ключей, отправкой пулл-реквестов и другими задачам процессами. Она дает преимущества при найме и создает более комфортные условия для адаптации к реальным проектам.
Фронтенд-разработчик, JavaScript, фриланс
На стажировку я пошел после завершения четвертого проекта и параллельно начал искать работу. На примере опенсорса я хотел разобраться, как устроены рабочие процессы, получить опыт работы с GitHub и попробовать разворачивать проекта. Кроме того, в карьерном треке мне посоветовали получить опыт работы на реальном проекте, чтобы повысить привлекательность резюме.
Опыт развертывания проектов. После стажировки проще влиться в проекты на первой работе: уже есть опыт развертывания проектов и оформления пулл-реквестов.
Реальный проект в резюме. Вам есть, о чем разговаривать на собеседовании: кроме учебных проектов есть реальные кейсы. Это хороший практический опыт, который сильно отличается от учебных проектов: в них не удастся получить опыт оформления пулл-реквестов в контексте совместной работы и разобраться в чужом коде. Это хорошее подспорье для поиска первой работы.
Передо мной стояла задача закончить редактор кода на React. Приступать к ней было страшно — непонятно, с чего начать и как решать задачу. Но самое сложное — начать: я посмотрел гайд по развертыванию проекта, успешно его развернул, попробовал и все начало получаться.
Я проработал над проектом около двух недель: делал пулл-реквесты, вносил правки в свой код и вместе с другими разработчиками довел задачу до продакшна.
Фронтенд-разработчик, JavaScript, компания Dualboot Partners
После завершения четвертого учебного проекта я принял решение пойти на стажировку. К тому времени я разобрался с React — по сравнению с нативным JS, это серьезно расширило спектр проектов, в которых я могу участвовать. Я выбрал для себя последовательный путь — закончить Хекслет, пройти стажировку и только после этого искать первую работу.
В Hexlet SICP я работал два месяца и после этого начал искать работу. Через две недели получил оффер в Dualboot Partners.
Навыки командной разработки. На реальных проектах придется часто сталкиваться с ситуацией, когда отдельную фичу нужно внедрить в уже написанный код и ничего в нем не сломать. Это требует навыков чтения чужого кода и понимания его логики. Опенсорс-проекты помогают развить этот навык.
Отсутствие задач, связанных с коммерческим кодом. Еще один плюс стажировки в опенсорс-проекте — разработчик не имеет дела с коммерческим кодом. Если что-то пойдет не так, никто не будет терпеть финансовых убытков. Возможные проблемы будут сравнительно безболезненными как для разработчика, так и для хоста проекта.
Реальный опыт в резюме. При составлении первого резюме в опыте работы я указал участие в опенсорсе. Этот пункт, на мой взгляд, очень важен — если искать работу сразу после учебы, в нем либо будет прочерк, либо нерелевантный опыт работы.
Стажировка позволяет принять участие в реальном проект с теми же самыми процессами, как в коммерческой разработке. Тут есть и коммуникация с другими разработчиками, и тимлид, который подскажет и направит в случае, если возникнут проблемы. Отличия только в том, что цена ошибки ниже, а работа не оплачивается.
Разработка Hexlet.SICP и Code Basics продолжается: принять участие в их развитии может любой желающий — задачи можно получить в канале #hexlet-volunteers в Telegram-сообществе. Большинство из них предназначено для программистов, знакомых с версткой и PHP, но есть задачи и на JavaScript.
Кроме них на Хекслете есть еще несколько опенсорс-проектов. Например, hexlet-correction. Это сервис уведомления владельцев сайтов об ошибках и опечатках, который работает на Java. После интеграции с сайтом посетители получают возможность выделить ошибку или опечатку и сообщить о ней администратору. Полный список опенсорс-проеков Хекслета можно найти здесь.
Никогда не останавливайтесь: В программировании говорят, что нужно постоянно учиться даже для того, чтобы просто находиться на месте. Развивайтесь с нами — на Хекслете есть сотни курсов по разработке на разных языках и технологиях