Даже если не заонбордили
Начало работы программиста в новом проекте — интересный, но полный стресса процесс. Программист готов погрузиться и вносить свой вклад в работу, но его окружают незнакомые инструменты, процессы и базы кода, в которых нужно разобраться. Собрали советы, которые могут помочь быстро включиться в работу.
Познакомьтесь с командой и процессами
Вероятнее всего, вас представят команде нового для вас проекта, но, если у вас остались вопросы о том, кто чем занимается и за что отвечает, нет ничего страшного в том, чтобы их задать. Вам нужно понимать, к кому вы можете обратиться с вопросами о продукте, процессе, учётных записях и инструментах.
Если с командой вас знакомит кто-то из коллег или руководитель, можно задать такие вопросы:
- Кто основные участники команды и каковы их роли?
- Какая информация мне нужна, чтобы начать погружаться в проект?
- К чему мне нужен доступ?
- Кто будет проверять мою работу?
Если ваши коллеги и руководство заняты своей текущей работой и вам нужно проявить инициативу, будьте терпеливы и дружелюбны. Держите под рукой блокнот, чтобы не забыть что-то важное и не спрашивать об одном и том же. Вот как можно адаптироваться самостоятельно:
- Установите личный контакт. Постарайтесь познакомиться со всеми лично. Представьтесь, скажите, что готовы помочь, и задайте коллегам вопросы об их ролях в проекте.
- Спросите о процессах работы в проекте. Это может быть методология разработки, система управления задачами и другие инструменты и практики.
- Узнайте, как команда общается и делится информацией. Присоединитесь к соответствующим чатам, почтовым спискам или другим коммуникационным каналам.
Составьте план на ближайшее время
После того как вы выясните, кто будет проверять вашу работу, составьте примерный план действий на ближайшую неделю или месяц, а затем покажите этот план своему руководителю. Это покажет вашу инициативность и готовность приступить к работе.
План работы может состоять из таких задач, как «получить все необходимые доступы», «прочитать конкретную документацию», «настроить своё рабочее место», «изучить конкретные технологии», «посетить курсы или семинары» и так далее. Придерживаясь плана, вы всегда будете знать, чем заняться, пока вам не поручили конкретные практические задачи.
Изучите документацию, технологии и инструменты
Прежде чем приступать к написанию кода, важно ознакомиться с проектом и его целями. Для этого вам нужно запросить любую соответствующую документацию, которая может дать представление о цели, задачах и общей логике проекта. Есть две причины сделать именно так вместо того, чтобы погружаться в кодовую базу:
- Изучая кодовую базу, вы можете перенять «плохие» привычки и методы программистов, которые работали до вас. То, что код был запущен в производство, не означает, что он был написан хорошо.
- Может оказаться, что кодовая база устарела, технология изменилась или что соответствующие концепции нелегко изучить, просто читая код.
Может оказаться, что документация тоже устарела или её пока нет. Тогда желательно выяснить, кто может рассказать о проекте так, чтобы после этого можно было изучать кодовую базу проекта, например основные компоненты, архитектуру и структуру. При этом важно узнать, каково текущее состояние проекта, его проблемы и приоритеты.
Команда может использовать технологии и инструменты, которых вы не знаете. В первые несколько недель у вас есть отличная возможность накопить знания, которые вам понадобятся в дальнейшем. Лучше начать изучать стек технологий как можно раньше, возможно даже параллельно с чтением документации. Не откладывайте этот процесс до времён, когда начнёте работать с кодом: учиться и работать одновременно может быть сложнее.
Узнайте правила написания кода в команде
Среди программистов ведутся разные дискуссии о том, как правильно писать код: взять хотя бы спор о пробелах и табуляции. Но правильный ответ на вопрос «как писать код» таков: «так, как указано в документации или принято в команде».
В крупных компаниях чаще всего есть длинные руководства по стилю, в совсем маленьких бывает достаточно, что код компилируется и модульные тесты проходят успешно. Большинство компаний находится где-то посередине.
Изучите систему контроля версий
Система контроля версий позволяет программистам отслеживать изменения в коде и управлять версиями проекта. Если проект использует систему контроля версий, например Git, изучите основные команды и рабочий процесс.
Запустите проект локально и проведите тесты
После того как вы ознакомились с документацией, технологиями, кодовой базой и процессами работы проекта, запустите проект локально на вашем компьютере и проведите тесты. Вот как это можно сделать:
- Установите необходимые фреймворки, библиотеки и базы данных.
- Создайте копию репозитория проекта, используя систему контроля версий, например Git.
- Настройте необходимые переменные окружения и файлы конфигурации, чтобы проект работал правильно.
Тестируя проект локально на своём компьютере, вы сможете проанализировать программное обеспечение и выявить различия между существующей версией и требованиями к этому ПО. Это даст вам возможность задать конкретные вопросы, которые помогут узнать, как работает система.
Задавайте вопросы и просите о помощи
Не стесняйтесь задавать вопросы своим коллегам и руководителю. Это поможет вам быстрее понять особенности проекта и получить помощь при необходимости.
Если вас приглашают на собрания и созвоны, не стесняйтесь задавать вопросы. Если на ответ нет времени, попросите о возможности задать вопрос позже и запишите его, чтобы не забыть.
Хорошее правило: если вы не можете понять что-то самостоятельно, с помощью документации или результатов поиска в Яндексе или Гугле в течение 30–60 минут, задайте вопрос вслух. Вовремя обратившись за помощью, вы не затянете работу и выполните её лучше, чем если бы у вас оставалось мало времени из-за самостоятельных поисков ответа.
Начните с малого
Пройдя теоретическую часть погружения в проект, вы можете почувствовать желание быстро произвести впечатление на коллег и руководство за счёт какого-то значительного вклада в работу. Но лучше всё-таки начинать с небольших действий (если только от вас не ждут обратного, но об этом мы поговорим в другой раз).
Начните с маленьких задач, исправлений или добавления новых функций. Это поможет вам быстро внедриться в проект и стать полезным членом команды.
Что дальше
Не торопитесь и не испытывайте чрезмерного стресса или беспокойства по этому поводу. Ваша команда понимает, что вам требуется некоторое время, чтобы полностью включиться в проект, и она, скорее всего, предоставит вам необходимую поддержку и рекомендации, которые помогут вам освоиться.
Вместо того чтобы чувствовать себя подавленно, постарайтесь воспринимать процесс адаптации как возможность учиться и расти как программист. Воспользуйтесь любым доступным вам обучением или ресурсами и не стесняйтесь обращаться за помощью или разъяснениями, когда они вам понадобятся. Со временем и усилиями вы сможете обрести уверенность и опыт и стать ценным членом команды.
Ну, а у нас есть ещё много материалов на темы о софт-скилах для технических специалистов. Подпишитесь, чтобы не пропустить:-)