Карьерный переход от маркетинга к разработке программного обеспечения

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

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

Фон

Подростком я поигрался с HTML и CSS и создал свой первый index.html на семейном компьютере. Я признаю себя виновным в копировании некоторого фрагмента кода JavaScript для анимации курсора мыши (в этом духе). Оглядываясь назад, я также занимался поисковой оптимизацией, отправляя электронные письма веб-мастерам с запросами ссылок на мой личный веб-сайт. Я продолжил изучать бизнес в университете и последние пять лет проработал в сфере цифрового маркетинга. Более или менее случайно я всегда работал в технически сложной среде, в окружении разработчиков. Трудно сказать, когда эта мысль впервые пришла мне в голову, все, что я знаю сейчас, это то, что я давно думал о профессиональном программировании. Не столько как возможность для меня, сколько то, что должно быть приятно для немногих счастливчиков. Сначала я подумал, что мне уже слишком поздно и сложно стать разработчиком.

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

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

Встреча с моим наставником

Однажды у меня с коллегой-разработчиком состоялся неформальный чат, и мы начали говорить о личном проекте, над которым я работал (запрос API популярного приложения для бега / езды на велосипеде для извлечения и анализа данных о поездках). Через несколько минут мы договорились регулярно встречаться в обеденное время, чтобы вместе работать над моим проектом. Эти еженедельные наставнические занятия оказались очень важными, и я буду всегда им благодарен. Во-первых, они обеспечили регулярность и последовательность в моем обучении. Во-вторых, они мотивировали меня, заставляя меня отвечать: этот человек готов тратить один час своего обеденного перерыва каждую неделю, чтобы помочь мне, и, как минимум, я могу работать и, надеюсь, заставить их гордиться (или, по крайней мере, чувствовать, что они этого не сделали). тратить свое время).

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

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

Много было сказано о целях и о том, как постановка УМНЫХ целей помогает добиться успеха. Нам очень помогли план и общие временные рамки. Мне было над чем работать.

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

Определение программы

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

Вместе мы рассмотрели с разной степенью глубины: HTML, CSS, SASS, JavaScript, Node.js, React, git, разработку через тестирование, гибкие методологии и рабочие практики. Есть много онлайн-ресурсов и множество планов, которые могут вам помочь. Что касается материала, я рекомендую этот отличный пост в блоге Сергея Гарсии. Просмотр самых популярных репозиториев GitHub также является отличной отправной точкой.

Кроме того, если вы не изучали это в своей учебе, я рекомендую начать свой путь с изучения того, как учиться (если вы собираетесь тратить 10–15 часов в неделю на обучение, вы также можете быть в этом эффективными). Мне пригодился этот (бесплатный) курс Coursera.

Стать разработчиком

Ближе к концу 6 месяцев я начал работать над техническими тестами, которые кандидаты берут, когда они подают заявку на должность фронт-энда в Trainline. Это был не просто тест, но и хороший проект, над которым можно было поработать и чему-то научиться. Затем настало время передачи моей бывшей команды, и, наконец, момент, над которым я так долго работал, наконец-то наступил: я присоединился к новой команде, счастлив (и немного опасаясь).

В общем, звезды сошлись: мой линейный менеджер, наставник, HR и менеджер по развитию моей будущей команды. Это был непростой шаг, но все были готовы заставить его работать (как сказал коллега, Trainline - это компания, «да»). Я благодарен за то, что Trainline ценит непрерывное обучение, способствует сотрудничеству и понимает, что есть некоторые преимущества для бизнеса, когда сотрудники переходят из одного отдела в другой (мое понимание веб-аналитики и навыков анализа данных может помочь моей нынешней команде). Сделать этот переход было непросто, но я не понимаю, как это вообще могло произойти за пределами Trainline без участия замечательных людей.