Мой путь от программиста-любителя до программиста

Я уже месяц в своей новой роли младшего инженера-программиста в Просто Бизнес и могу с уверенностью сказать, что… я понятия не имею, что делаю. Но это нормально! Я имею в виду, я думаю, что это нормально, потому что кажется, что никто не знает, что они делают. Что ж, некоторые люди знают немного больше о том, чего они не знают, но большинство из них бродят по метафорическому лесу, который представляет собой кодовую базу компании, глубокой ночью с различными фонариками разной мощности. Так уж получилось, что мой крошечный заводной фонарик требует немало усилий, чтобы поддерживать работу, и может показывать только пару шагов впереди меня. Большую часть времени я реву в темную бездну, надеясь, что путь впереди откроется. Даже если это неудобно, я понимаю, что это процесс становления, через который должен пройти каждый младший разработчик программного обеспечения. Хорошо проторенный обряд посвящения.

Месяц 1 Разбивка

Неделя 1 — Хакатон

В мой первый день в Simply Business меня добавили в группу новичков, которым было поручено создать API для одного из наших страховых путешествий. Будучи самым младшим в группе и не имея никаких знаний в предметной области, это, безусловно, было крещением огнём. Несмотря на первоначальный дискомфорт, в первые несколько дней я изучил загрузку контейнеров, начиная с диаграмм последовательности и переходя к веб-фреймворку React, ни к чему до сих пор не прикасался. Трудно было внести свой вклад на уровне младшего (выпускного) уровня, но было здорово участвовать в проекте, который повлияет на основные бизнес-функции.

Неделя 2 — Преуспеть за 5

После первоначального шока от внедрения технических изменений в неизвестной области я начал 5-дневную программу ознакомления с культурой, метко названную Процветай через 5. Здесь я познал все тонкости культуры Просто Бизнес. Будучи высокотехнологичной страховой компанией, я много слышал о технологиях, лежащих в основе наших страховых продуктов, но я также слышал от всех других команд в бизнесе, включая страховые продукты, риски и соответствие требованиям, продажи и маркетинг, данные и аналитику. , бизнес-операции и безопасность. Мы в SB хорошо разбираемся в нашей культуре, поэтому теперь я очень хорошо знаком с нашими ценностями LEAPS, учитывая множество интерактивных сессий. Наши ценности:

  • Lзаработок
  • Расширение возможностей
  • Аподлинность
  • Пиониринг
  • Sнеявность

Подробнее о нашей рабочей культуре здесь.

Недели 3 и 4 — Технологии в 10

После знакомства с культурой я сразу же погрузился в 10-дневное погружение в различные технические системы SB. Этот был полон информации и довольно труден для усвоения. Я знаю, что многое, вероятно, ушло из моей головы, поэтому мне нужно будет пересмотреть большую часть контента в ближайшие недели/месяцы. Основная система представляет собой буквально монолит, поэтому весьма вероятно, что я никогда полностью не пойму, как она работает. К концу двухнедельного вводного технического курса я был изрядно разбит, не говоря уже о том, что мне не терпелось написать какой-нибудь правильный код. В основном, чтобы подтвердить, что я на самом деле компетентный программист (в чем я до сих пор не уверен). Посмотрим, как пойдут дела в ближайшие пару месяцев.

Неделя 5 — Мой первый билет

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

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

Самое сложное испытание первого месяца — синдром самозванца

Синдром самозванца - отстой, двух вариантов нет. Для тех из вас, кто никогда не сталкивался с этим, это, по сути, постоянное низкоуровневое беспокойство по поводу того, что вас разоблачат как мошенника. Чувство, которое бурлит под поверхностью, придираясь к вашей самооценке и лишая вас всякой уверенности в своих способностях. Скорее довольно неприятно. Это также очень распространено, особенно в сообществе разработчиков программного обеспечения; Синдром самозванца затрагивает целых 58% технических специалистов. Уже в первую неделю кодирования я чувствовал, что избегаю парного программирования, испытываю стресс из-за того, что не знаю ответов на сложные вопросы, связанные с предметной областью, и даже сомневаюсь в своей способности полностью программировать. Довольно эмоциональные американские горки.

Лучший инструмент первого месяца — «Морозильник».

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

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