Как успешно стажировать Junior разработчиков?
Получение первой работы в качестве разработчика действительно захватывающий момент.
Независимо от того, приехали ли вы из колледжа, учебного лагеря или вы самоучка, предложение о работе будет тем моментом, которого вы так долго ждали, доказательством того, что время и усилия, затраченные на обучение программированию, не прошли даром.
Тем не менее, обучение кодированию и работа в качестве разработчика - это немного разные вещи: у вас появиться компания, для которой вы пишете код, коллеги, у которых больше и/или другой опыт, чем у вас, и новые инструменты, к которым вам нужно привыкнуть.
Помню, в каком восторге я был в свой первый рабочий день, но все же еще боролся с чувствами страха, неуверенности в себе и изоляции от других разработчиков. Ниже я расскажу о нескольких стратегиях, которые Planet Argon применяют, чтобы помочь стать младшим разработчиком в своей компании.
1. Укрепляем доверие
Огромную роль в процессе моей адаптации сыграло укрепление доверия путем разрушения страхов, связанных с синдромом самозванца. В течение первого месяца я постоянно спрашивал себя:
- Смогу ли я сделать эту работу?
- Что если я все сломаю?
Уверенность младшего разработчика проявляется двумя способами: чувство уверенности в себе, достаточное для самостоятельного выполнения задач, и комфортная среда в компании для того, чтобы задавать вопросы и работать с другими разработчиками. Использование баланса активности на ранних этапах поможет вашему новому младшему разработчику начать чувствовать себя комфортно в своей роли намного быстрее.
План первой недели джуниора в Planet Argon включает в себя время DevOps, чтобы настроить свою машину и ознакомиться с нашими клиентскими проектами, а также время для знакомства с старшими разработчиками, чтобы поддержать наших новых членов команды всеми способами.
2. Установите требования
Первая неделя младшего разработчика в Planet Argon включает встречи с руководством и менеджерами проектов. Настало время поделиться ценностями компании и процессом того, как мы добиваемся успеха.
Помогите своим новым сотрудникам избежать ощущения «я не уверен, что я должен делать», посвятив время тому, чтобы рассказать им о том, как успешно пройти стажировку.
Вклад в кодовую базу может устрашать непосвященных. Как бы ни был уверен ваш младший разработчик в своей домашней среде разработки, работа над чужим кодом за деньги может стать большим пугающим фактором.
Делитесь с ними целями и вехами высокого уровня, а также подробными процедурами написания коммитов и ответов на билеты JIRA. Конкретный пример из моего расписания включает постепенное уменьшение количества времени, затрачиваемого на «поглощенную разработку». Это термин, мы используем для не связанного с кодированием времени, потраченного на изучение того, как внести необходимые изменения. Это то самое время, когда нужно, что называется «впитывать» информацию, потому что мы не можем выставить счет клиентам за это.
Я также высоко оценил правило «без сюрпризов» в Planet Argon. Когда все становиться ошеломляющим или неуместным, расскажите кому-нибудь. Мы не хотим удивлять наших клиентов или партнеров по команде.
В целом, напомните вашему младшему разработчику, что их привели в команду, зная, что другие разработчики будут проводить с ними время, чтобы обучить их. Эта компания была заинтересована в инвестировании в вас, младший разработчик, и мы хотим, чтобы вы были здесь.
3. Делитесь знаниями
Независимо от того, сколько раз коллеги говорили: «не стесняйтесь задавать мне любые вопросы, которые у вас есть» (что помогает), я не чувствовал себя комфортно, пока не потратил некоторое время, чтобы познакомиться с ними. А уже после, когда я вернулся к своим личным задачам с новыми навыками, в случае появления проблемы, которою я был не в состоянии решить, мне стало проще обращаться за помощью к другим.
Будьте терпеливы и найдите время, чтобы спланировать каким тонкостям дела вы бы хотели обучить своего сотрудника. Сочетания клавиш, настройка Oh My ZSH и обсуждение контроля версий сначала ошеломили меня, особенно когда я наблюдал, как другие разработчики ловко серфили в командной строке. Использование ярлыков на моей рабочей станции было немного похоже на отрабатывание весов на пианино, но теперь я достиг такого уровня, что начинаю играть на небольших концертах.
После того, как младший разработчик посмотрит, как работают ваши коллеги и познакомится с инструментами компании, подготовьте для него добротный тикет. Это отличное представление того, как работает ваша система управления задачами, и джунам будет приятно закончить что-то и пометить это как выполненное.
4. Проводите ревью и обновление документации
Обычная задача, которую можно найти внизу многих списков, - обновить документацию. С каждым новым наймом документация может иметь решающее значение - это ваша карта понимания культуры компании и того, что вы должны делать. Будьте в курсе того, что включено в нее. Будьте уверены, что то, что вы им даете, полезно.
Просмотрите и обновите материалы, которые вы дадите младшем разработчикам, прежде чем передать их им. Нерабочие инструкции по установке могут остановить их. Вы бы не хотели, чтобы кто-то дал вам неправильный ReadMe, так что не делайте то же самое с вашими джунами.
Кроме того, попросите ваших младших разработчиков предоставить материалы вашей компании, чтобы помочь следующему, кто придет. Они самые последние, кто разбирается в документах, они, вероятно, знают, что отсутствует и устарело. Предоставление им возможности внести свой вклад дает возможность поразмышлять о гигантской кривой обучения, в которую они вступили.
Привычки формируются быстро - то, что казалось ужасающим и новым, должно (надеюсь) стать довольно быстро вполне обыденным. Если вы не оставляете заметки следующему разработчику на этапе стажировки, есть вероятность, что младший разработчик ассимилирует их (так же, как они ассимилируются в вашей команде), и забудет о том, что хотел оставить заметки до следующего найма.
Стажировка джуниоров со стороны руководителя и прохождение стажировки со стороны джуниора - это две огромные и деликатные обязанности. Борьба с запугиванием, с получением знаний и поддержкой. Подавите неопределенность, предоставляя конкретные инструкции. Напомните своим младшим разработчикам, что вы доверяете им и рады, что они в вашей команде.