Хабрахабр

Из фронтенда в бэкенд

Кому-то просто привычнее видеть любые карьерные изменения внутри одной компании через призму роста должностей. К переходам внутри департаментов иногда относятся по-разному. Третьи же в принципе уверены, что переход из департамента в департамент означает, что человек занимает позицию “ни рыба, ни мясо”, и вряд ли добьётся чего-то значимого. Кто-то не считает возможным сменить сферу деятельности, даже если она смежная с текущей.

image

При этом некоторые работодатели всячески это приветствуют и считают чем-то вроде предохранителя от выгорания – человек сменит фокус внимания, сменит департамент или отдел, но не сменит саму работу в целом.

Сегодня расскажу вам, как успешно перешел из frontend-разработки в backend. Меня зовут Костя, и я работаю в QIWI почти 4 года.

Frontend

При этом не могу сказать, что было скучно – задачи были довольно разные и в рамках одного приложения: мы занимались интеграцией кошелька с другими нашими сервисами, чинили баги, подтягивали анимацию. В QIWI я с конца 2014 года, начинал работать как разработчик iOS–приложений, и, в принципе, пару лет занимался разработкой QIWI-кошелька. Потом немного расширил фокус и поработал еще и над iOS-приложением для «Совести». Кроме этого, был занятный опыт по созданию приложения для Apple Watch.

image

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

То, что я делаю сейчас, это классические задачи бэкендера – пишу код в наших микросервисах, чиню баги, занимаюсь рефакторингом, постигаю Kotlin. Но в бэкенде на то время было слишком мало разработчиков и слишком здоровенный бэклог, так что в итоге я все же переключился на бэкенд полностью. Есть возможность работать и над свежим продуктом компании – QIWI Инвестор.

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

Тимлиды все поняли и отпустили меня без каких-то претензий, продакт тоже. Так что тут сложилась win-win ситуация – я хотел помочь команде и продукту (перевес в разработке был сильно не в сторону бэкендеров) и набраться новых знаний.

Ну и было желание в случае чего уметь взять и сделать себе приложение самому (и фронт, и бэк), если вдруг появится какая-то клевая идея. Кроме этого, знания хотелось именно диверсифицировать, чтобы не привязываться к одной платформе (Android мне немного не по душе, но и Apple все же сдает позиции). Пока вот не пригодилось, правда.

Backend

image

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

Никого не раздражало, что первое время я явно работал не так эффективно, потому что во многое надо было въезжать (но в долгосрочной перспективе команда-то все равно в выигрыше).

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

Впечатления от бэкенда после фронтенда

Вообще. Нет работы с UI. Минусы такого положения – конечный пользователь не видит результатов конкретно моей работы, как это было с фронтом. Раньше приходилось убивать время на исправление багов в UI, сейчас – нет. И тут уже не так важно – за фронт ты или за бэк. Я пытался определить, что же сложнее – бэк или фронт, и понял, что (лично для меня) тяжелее всегда было работать с многопоточностью и сетевым стеком. На фронте я просто столкнулся с такими задачами впервые, без подготовки, а на бэкенде уже с каким-никаким опытом.

Причем для бэкендера не столь критично наличие или отсутствие опыта во фронте. Набраться опыта и делать что-то крутое можно в любой области, было бы желание и усидчивость, здесь практики сходятся – сделать что-то (и сделать хорошо), и чтобы это работало надежно и легко поддерживалось. Если разраб учитывает все мелочи, сам продумывает корнер-кейсы и в целом понимает, как будут использовать его API, то он и без фронт-знаний сделает все, как надо.

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

Что в итоге

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

Для меня все же важно видеть и понимать, как мой продукт воспринимают пользователи. Но при этом, попробовав вживую что фронт, что бэк, я не скажу, что в случае чего сразу выбрал бы бэкенд в самом начале карьеры. С бэкендом это все довольно призрачно.

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

Теги
Показать больше

Похожие статьи

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *

Кнопка «Наверх»
Закрыть