Итак, вы наконец получили первое предложение о работе в качестве разработчика. Бесконечные циклы решения сложных алгоритмических задач, демонстрация своих проектов на GitHub, разговоры с рекрутерами о том, что, по вашему мнению, является вашей самой большой слабостью… все это наконец закончилось, и теперь вы официально являетесь разработчиком программного обеспечения. Вы публикуете праздничный твит в Твиттере, получаете миллиард лайков и наслаждаетесь приливом эндорфинов.

Теперь ты можешь расслабиться, не так ли? Неа.

Довольно скоро вы начинаете сходить с ума, потому что понимаете, что со следующего понедельника вы на самом деле будете писать производственный код, работая со старшими, у которых десятки лет опыта, и ваш синдром самозванца кричит на вас.

Вызовете ли вы серьезный сбой в свой первый день? Может быть, вы случайно запустите интеграционный тест в продакшене и в итоге отправите миллионы электронных писем пользователям приложения, как это сделал несчастный стажер HBO?

Что ж, хорошая новость в том, что вы действительно можете расслабиться. По крайней мере на время.

В первые несколько недель вы, вероятно, будете только на борту. Это означает, что вы будете тратить большую часть своего времени на настройку своей локальной среды, установку набора программного обеспечения, которое вы будете использовать ежедневно, настройку двухфакторной аутентификации и других вещей, связанных с безопасностью, знакомство с вашими товарищами по команде и, самое главное, чтение А. тонн документации.

Вы также будете делать кучу скучных административных вещей, и если вам не повезло, и ваша компания имеет определенные сертификаты безопасности (например, ISO 27001), вам придется выучить кучу в общем-то неважных вещей, чтобы вы может сдать обязательный экзамен.

Главное, однако, заключается в том, что ни один руководитель проекта в здравом уме не даст вам ничего действительно значимого в первые несколько недель вашей первой работы в сфере технологий.

Хотя в большинстве объявлений о вакансиях утверждается, что они работают в «быстро развивающейся, гибкой среде», реальность, по моему опыту, такова, что довольно часто это совсем не так. Особенно, если вы только что присоединились к компании, и особенно если это ваша первая должность в сфере технологий.

Это не значит, что вы должны просто расслабиться. Используйте это время, чтобы задать как можно больше вопросов. Помните - глупых вопросов не бывает. Лучше сразу спросить, чем дать всем понять, что вы поняли что-то непонятное вам.

Узнайте, как работает процесс разработки в вашей новой компании. Что они используют для отслеживания проблем? Может ДЖИРА? Узнайте, как это работает. Руководители проектов обычно проводят там большую часть своего времени, поэтому вы должны увидеть, каковы методы работы в отношении отслеживания проблем. Вы также, вероятно, будете много общаться со своими коллегами через Slack, поэтому узнайте, какой канал для чего предназначен, и посмотрите, кто из людей наиболее активен в Slack. Иногда вам понадобится быстрый ответ на вопрос, и люди, которые много сидят в Slack, скорее всего, ответят быстро (некоторые сотрудники почти никогда не смотрят в Slack, и вам нужно @их, чтобы привлечь их внимание).

По прошествии первых нескольких недель вы, вероятно, начнете получать настоящие билеты и фактически вносить свой вклад в назначенный вам проект. Это когда ваше сердце может снова начать биться, но вы все равно не должны паниковать. Ваши первые задачи должны быть относительно простыми, и помните, что даже если ваш код ужасен, вы будете работать только над своей функциональной веткой, поэтому у вас не будет шанса вызвать сбой или что-то сломать в продакшене. Это хорошее время, чтобы упомянуть, что вы должны абсолютно освоить git и github/gitlab/bitbucket (какой бы из них ни использовала ваша компания), потому что вы действительно можете сделать что-то сумасшедшее, например, удалить основную ветку, если вы не будете осторожны. Еще одна вещь, которую следует помнить, это то, что производственная база данных является самым священным артефактом во всей отрасли, поэтому, если вам предоставлен доступ к ней, не возитесь с ней. Наконец, вы должны знать, что большинство проектов имеют как минимум две (иногда даже три) среды. Та среда, в которой вы чаще всего будете выполнять развертывание, называется средой dev или песочницей. По сути, это копия производственной среды, но она доступна только разработчикам и QA-аналитикам, работающим над проектом, но не конечным пользователям приложения. Среда разработки очень часто может быть в беспорядке, потому что разработчики будут постоянно развертывать в ней различный экспериментальный код, но для этого она и существует.

Может быть промежуточная среда, которая является почти идеальной копией рабочей среды, где выполняется множество тестов, чтобы гарантировать, что любая новая функция не нарушит существующие. И, наконец, производственная среда, то есть версия приложения, которую используют конечные пользователи. Любое развертывание в рабочей среде выполняется с максимальной осторожностью.

Помню первые пару месяцев на своей первой работе. После первых нескольких недель адаптации я начал получать реальные задания. Я буквально не понимал, что делаю. Каждую пятницу я говорил себе: Вау! Вы прожили еще одну неделю, и вас не уволили!. Однажды я даже случайно отправил некоторые учетные данные API на Github (что является большим запретом, погуглите переменные среды для получения дополнительной информации). К счастью, они были только в среде песочницы, так что никто особо не переживал по этому поводу.

Примерно через месяц или около того я понял, что время от времени некоторые старшие разработчики действительно просили у меня совета. Тогда я понял, что либо эти ребята тоже не понимают, что делают, либо я действительно что-то умею.

Видите ли, разработка программного обеспечения — это такая огромная область, что ни один живой разработчик на планете не знает всего. Вы, как самый младший из юниоров, можете на самом деле знать какую-то технологию, которой не знает тимлид. Это не значит, что вы лучший разработчик конечно, это просто означает, что вы работали с какой-то технологией, которой у него нет, и вместо того, чтобы гуглить и читать документы по 30 минут (да, пенсионеры тоже все гуглят) , они вспомнили, что вы реализовали что-то подобное в предыдущем тикете, и ваш вклад будет действительно полезен.

Когда это происходит, вы осознаете свою ценность. Да, вы джуниор, и да, вы, вероятно, будете делать некоторые неловкие вещи в начале, но со временем вы сможете делать всю работу самостоятельно, и, что еще более невероятно, со временем вы действительно будете советоваться со своими товарищами по команде. Они, конечно, будут все время консультироваться с вами, но ваше мнение начнет иметь значение, и вы, вероятно, будете знать какую-то конкретную технологию лучше, чем большинство членов вашей команды.

Итак, в заключение, помните, что не стоит сходить с ума только потому, что вы начинаете свою первую работу в сфере технологий через несколько дней. Большинство людей в отрасли дружелюбны и более чем рады ответить на любые ваши вопросы.

И если вы вызовете серьезный сбой, вы, по крайней мере, будете знать, что чувствовал стажер HBO, когда они отправили миллион таких сообщений:

Кстати, я почти уверен, что он уже старший, с огромной зарплатой и уровнем уверенности мастера.

Это все для этой статьи. Я искренне надеюсь, что, если вы вскоре приступите к своей первой работе, вы нашли это хотя бы немного обнадеживающим.

Спасибо за прочтение!