Главная | Все статьи | Код

Навыки командной разработки, опыт с GitHub и умение читать чужой код: зачем нужна стажировка

Время чтения статьи ~7 минут 19
Навыки командной разработки, опыт с GitHub и умение читать чужой код: зачем н... главное изображение

Поиск работы для разработчика без опыта часто становится сложной задачей. Карьерный трек в Хекслете помогает найти работу, а участие в стажировке повышает шансы на трудоустройство. Рассказываем истории четырех студентов, которые прошли стажировку на проектах Хекслета 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. После интеграции с сайтом посетители получают возможность выделить ошибку или опечатку и сообщить о ней администратору. Полный список опенсорс-проеков Хекслета можно найти здесь.

Никогда не останавливайтесь: В программировании говорят, что нужно постоянно учиться даже для того, чтобы просто находиться на месте. Развивайтесь с нами — на Хекслете есть сотни курсов по разработке на разных языках и технологиях

Аватар пользователя Oleg Sabitov
Oleg Sabitov 27 апреля 2022
19
Похожие статьи
Рекомендуемые программы
профессия
Осваивайте разработку веб-страниц, оживляйте дизайн макетов, публикуйте сайты и приложения. Отслеживайте ошибки в интерфейсе и устраняйте их
10 месяцев
с нуля
Старт 5 декабря
профессия
Обучитесь разработке бэкенда сайтов и веб-приложений — серверной части, которая отвечает за логику и базы данных
10 месяцев
с нуля
Старт 5 декабря
профессия
Выполняйте ручное тестирование веб-приложений, находите ошибки в продукте. Узнайте все о тест-дизайне.
4 месяца
с нуля
Старт 5 декабря
профессия
Научитесь разработке веб-приложений, сайтов и программного обеспечения на языке Java, программируйте и используйте структуры данных
10 месяцев
с нуля
Старт 5 декабря
профессия
новый
Собирайте, анализируйте и интерпретируйте данные, улучшайте бизнес-процессы и продукт компании. Обучитесь работе с библиотеками Python
9 месяцев
с нуля
Старт 5 декабря
профессия
Занимайтесь созданием сайтов, веб-приложений, сервисов и их интеграцией с внутренними бизнес-системами на бекенд-языке PHP
10 месяцев
с нуля
Старт 5 декабря
профессия
Создание веб-приложений со скоростью света
5 месяцев
c опытом
Старт 5 декабря
профессия
Обучитесь разработке визуальной части сайта — фронтенда, а также реализации серверной — бэкенда. Освойте HTML, CSS, JavaScript
16 месяцев
с нуля
Старт 5 декабря
профессия
Разработка бэкенд-компонентов для веб-приложений
10 месяцев
с нуля
Старт 5 декабря
профессия
новый
Организовывайте процесс автоматизации тестирования на проекте, обучитесь языку программирования JavaScript, начните управлять процессом тестирования
8 месяцев
c опытом
Старт 5 декабря