По мнению Павла Минеева, Principal Frontend Engineer и ментора Solvery, frontend-разработчики могут развиваться в любом из направлений веб-разработки. Например, перейти в дизайн. Он рассказал об этом и других путях развития фронтендеров.
Павел — software engineer с большим опытом в разработке различных веб-приложений. Работал в Mamba, Rambler, Carl, Mail.ru Group, «Рокетбанке».
Карьера frontend-разработчика — какой путь развития выбрать?
Ирина Печёрская
Вертикальный рост
От Junior до Senior
Первый путь развития внутри своей специальности. Как и у любого разработчика, у фронтендера есть стандартный путь: от начинающего разработчика до инженера, имеющего большой опыт и знания в сфере. Как правило, такого разработчика отличает не только умение писать код, но и опыт решения разных жизненных ситуаций, которые происходят в ежедневной работе над проектом.
В индустрии нет четких и понятных измерителей для уровня Senior, и в каждой компании разработчиков могут оценивать по-разному. Например, разного рода ассессмент, задания, интервью и другие методы, которые позволяют работодателю объективно оценить сотрудника.
С моей точки зрения, Senior-разработчик — это самодостаточный разработчик, который может сам разобраться в любой задаче.
На собеседовании легко проверить объем знаний кандидата, но его самостоятельность проверить достаточно сложно, поэтому чаще всего это определяется через вопросы о том, чем человек занимался и какие задачи решал.
Если говорить о разнице оценки грейдов разработчиков, то можно привести в пример компании, где часто разработчики доходят до позиции Senior за счет быстрого выполнения большого объема монотонных задач, связанных со сферой их деятельности.
Можно сказать, что их повышают за хорошее решение этих задач и выслугу лет. Но, когда такие разработчики приходят в более свободные проекты, например, в быстро развивающиеся стартапы, где часто нужно придумывать новые нестандартные решения, то выясняется, что набор их навыков был хорош только для той компании, в которой он работал, а в новом продукте их уровень знаний и компетенций иногда не дотягивает даже до Middle.
Самая большая практическая конференция про выход на международные рынки Start Global Day
Team Lead
Многие думают, что логическим продолжением карьерного пути будет рост в тимлида. Но это не всегда лучший вариант. Хоть и подразумевается, что тимлид — это в том числе и разработчик, в первую очередь компании все же ждут от такого человека навыков управления командой.
Для разработчика это, скорее, сдвиг в сторону менеджерской позиции, чем технической. Поэтому, если вы хотите развиваться именно технически, я бы советовал обратить внимание на такие позиции, как техлид или архитектор. Они больше про работу с кодом, про управление техническим состоянием проекта и архитектурой.
СTО
Одним из пределов мечтаний роста в технической профессии является позиция директора по технологиям, или СТО. Но фронтенд-разработчик может столкнуться с большими трудностями, чем бэкенд-разработчик. Так получается, потому что основная бизнес-логика любого приложения — это бэкенд, и продукт работает за счет него. Поэтому вам придется хорошо поработать над расширением знаний в этой области, чтобы понимать, как работают все системы вашего продукта.
Не нужно также забывать о том, что это преимущественно менеджерская позиция, то есть о работе с кодом тут вообще можно забыть. На этом уровне вам придется заниматься принятием решений о том, в какую сторону технически движется продукт, нежели думать о каких-то мелких технических деталях.
Вторая важная составляющая этой позиции — понимание бизнеса, того, как он работает, и как удовлетворять его потребности. СТО — это тот человек, который стремится сделать качественный продукт, который будет отвечать не только техническим требованиям, но и требованиям бизнеса, чтобы разработчики не закапывались в коде, а производили продукт быстро.
Горизонтальное развитие
Дизайнер
Мне нередко встречались дизайнеры, которые до этого занимались фронтендом. Такие специалисты очень ценятся, потому что они понимают, как будет реализовываться их дизайн, и могут лучше работать с фронтенд-разработчиками, когда продумывают свои решения. Они понимают, что не все, что они придумали, может быть легко реализовано.
Также фронтендер, ставший дизайнером, зачастую имеет хороший опыт разработки интерфейсов, поэтому его UX-решения могут быть лучше, чем у дизайнера, который разработкой никогда не занимался.
В любом случае это все зависит от опыта, но, по моему мнению, дизайнер-бывший фронтенд-разработчик имеет преимущество перед тем, кто не имел дела с разработкой.
FullStack/Backend developer
Достаточно часто можно встретить фронтендеров, которые стали FullStack разработчиками. Зачастую это связано с тем, что они пишут бэкенд, в том числе на JavaScript — согласитесь, ведь легко начать писать бэкенд на знакомом языке?
Но и FullStack разработчики, знающие другой язык разработки бэкенда, — тоже не редкость. Это достаточно простой вариант развития, так как параллельно с разработкой и фронтендом можно начать осваивать бэкенд. Так, понемногу и постепенно вы можете стать FullStack-разработчиком или полностью перейти в бэкенд.
Надо сказать, что людей, которые уходят полностью в бэкенд, я встречал нечасто, но такое тоже бывает.
Mobile developer
На JavaScript можно писать практически под любую платформу. Мобильные операционные системы тут не стали исключением. Благодаря этому фронтенд-разработчики часто начинают реализовывать приложения с помощью таких фреймворков как React Native.
Они продолжают писать на привычном React, но с небольшими отличиями, при этом разрабатывая мобильные приложения. Несмотря на это, так как платформа не совершенна, все равно приходится лезть в нативные куски кода, где разработчики сталкиваются со Swift и Kotlin.
Развивая свои знания в этих языках, можно пробовать писать приложения на них. Разработка приложений — это по сути та же разработка интерфейсов, просто на другой платформе и со своей спецификой, поэтому это достаточно близкое для фронтенд-разработчика направление.
Любое другое направление
Помимо всего вышесказанного, у фронтенд-разработчика есть куча разных путей для развития в другие IT-профессии. Как пример, Data Science, Project/Product Manager и DevOps.
Если вам нравится позиция тимлида и менеджерские обязанности, вам может понравиться управлять проектом или командой на постоянной основе, не касаясь кода вообще. Если вы работаете фронтендером и вам нравится визуализация различных данных, скорее всего, вам было бы интересно, как эти данные собираются и анализируются. В таком случае направление Data Science было бы наверняка интересно для вас.
Или, например, DevOps. Если вам нравится настраивать разные инструменты, которые помогают доставлять код до продакшена и работать с инфраструктурой, вполне возможно, что вы можете сменить область деятельности в сторону DevOps.
Также существует много других специальностей, которые можно пробовать в зависимости от того, что вам больше по душе.
У любого разработчика в IT есть большой выбор вариантов, чтобы расти профессионально или переходить в смежные специальности в зависимости от предпочтений. Если у вас есть желание и вы уже разработчик, я уверен, что это не будет сложным процессом. Пробуйте свои силы в чем-то новом или развивайтесь и растите в вашем текущем направлении.
Источник: