В сентябре 2015 года, примерно после девяти месяцев самостоятельного обучения, я получил свою первую роль веб-разработчика (в Icelab, дизайн-студии с офисами в Канберре и Мельбурне). С тех пор я пережил много взлетов (и падений), но в целом это был отличный старт в отрасли, даже если я действительно чувствовал себя самозванцем большую часть первых нескольких месяцев. В произвольном порядке это несколько уроков, которые я усвоил за первые шесть месяцев работы разработчиком.

Всегда будут вещи, которых вы не знаете

Когда я впервые начал учиться кодировать, у меня был аналитический паралич, и я был ошеломлен количеством различных решений, которые мне приходилось принимать относительно того, с чего начать обучение. HTML? JavaScript? Питон? Рубин? Я пробовал их все, думая, что мне нужно хотя бы элементарное понимание каждого языка и фреймворка (даже если я не мог написать код на каждом из них). В результате я долго крутил колеса, перескакивая с языка на язык, не тратя ни на один из них достаточно времени, чтобы хоть что-то из того, чему я научился, усвоилось.

С тех пор я понял, что ни один разработчик не может использовать все возможные варианты, и научился применять более прагматичный подход и сосредоточиться на том, чтобы стать надежным с одним языком и фреймворком (в моем случае Ruby и Rails) и работать над собирая все, что я могу из других языков, библиотек и платформ по пути. Помимо Ruby и Rails, на сегодняшний день в Icelab я работал с Elasticsearch, Resque, Docker, AWS, Heroku и немного баловался интерфейсом, и обучение, работая над реальными проектами, было отличным способом добавить дополнительные навыки. в мой репертуар.

глупых вопросов не бывает

В первые дни работы в Icelab (да и в какой-то степени до сих пор) я не хотел задавать глупые, как мне казалось, вопросы или вопросы, на которые, как мне казалось, я должен был знать ответ. В паре случаев это приводило к тому, что я «угадывал» направление, в котором мне следует развивать функцию, над которой я работал, только для того, чтобы отказаться от своей работы и начать заново, как только я, наконец, набрался смелости, чтобы попросить разъяснений у другие члены команды проекта.

Как новый разработчик, наступит момент, когда предполагается/ожидается, что вы знаете определенные вещи, но вы вряд ли столкнетесь с этим в первые несколько недель или месяцев. Самое время задать те вопросы, которые вы считаете глупыми, чтобы не выглядеть невнимательно, когда через несколько месяцев вам нужно будет задать те же вопросы.

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

Думай и работай вслух

У нас есть распределенная команда в Icelab с офисами в Канберре и Мельбурне, а члены команды работают из своих домов в Сиднее, Ньюкасле, Бангкоке и других местах в Азии (я пишу этот пост из Чиангмая). В результате мы в значительной степени полагаемся на такие инструменты, как slack, чтобы общаться и держать друг друга в курсе того, над чем мы работаем и где мы находимся.

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

Никогда не прекращайте учиться

Чтобы построить успешную карьеру веб-разработчика, важно инвестировать время в постоянное самообучение. Я, вероятно, мог бы прожить следующие несколько лет со знаниями, которые у меня есть прямо сейчас, но, учитывая, что я отказался от довольно хорошо оплачиваемой карьеры, чтобы начать в нижней части новой отрасли, я полон решимости не просто «прожить», и в результате я знаю, что мне нужно проводить время вне работы, повышая свои знания Ruby & Rails, по крайней мере, до «промежуточного» уровня, а затем развивая другие навыки оттуда.

Когда я начал учиться кодировать, я получил большое удовольствие от того, что застрял на чем-то, а затем терпеливо и методично работал над поиском решения, пока, вуаля, дело не заработало.

Будьте щедры к тем, кто работает над проникновением в отрасль (люди, вероятно, были к вам, когда вы только начинали)

Когда я был на последнем Rails Camp (в Канберре в декабре), я встретил парня ненамного моложе меня, который хотел сделать то же, что и я, и перейти от удобной, но неблагодарной карьеры к карьере веб-разработчика. На выходных у нас было несколько замечательных бесед о том, с чего начать и как развивать упорство, чтобы сохранять мотивацию перед лицом невзгод (с которыми мы все сталкивались много, много раз, когда начинали).

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

В заключение

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

Первоначально опубликовано на dylanwolff.com 17 апреля 2016 г.