2022-01-25 21:01:28
Давно уже стало поводом для мемов разделение разработчиков на бэкэндеров и фронтендеров. Хотя нетрудно вспомнить время, когда в нулевых были веб-разработчики и верстальщики. Причём веб-разработчики тоже зачастую умели верстать, просто вёрстку удобно было отдавать в работу другому исполнителю, чтобы распараллелить процесс разработки. Опять же, кому-то просто не нравилось верстать самому, хотя я в вёрстке находил и нахожу для себя возможность заняться чем-то творческим, ненапряжным, с возможностью послушать музыку на фоне.
Справедливости ради нужно сказать, что верстать раньше было не то чтобы трудно. Но с развитием стандартов, технологии во фронтенде становились сложнее, необходимо было реализовывать больше динамики (и тут на помощь пришёл jQuery, потому что на голом JavaScript реализовывать динамику было невыносимо). С появлением Node.js актуальной стала сборка скриптов и стилей в бандлы для уменьшения результирующего кода и ускорения загрузки страницы. Правильная настройка сборки — отдельная предметная область, в которой фронтендерам тоже нужно было разбираться. А ещё была необходимость поддержки Internet Explorer новых версий наравне со старыми, потому что каждая новая версия закрывала старые баги, но привносила новые, а заказчик требовал поддержку начиная с IE6.
Так и появилась профессия фронтенд-разработчик, для которого вёрстка была лишь частью обязанностей, в то время как основными стали написание кода на JavaScript (а теперь в основном на TypeScript), настройка сборки, гонка за скоростью отрисовки, адаптивностью и прочее.
Что интересно, сейчас вновь можно наблюдать появление отдельной профессии «верстальщик», которая подразумевает сугубо вёрстку без реализации логики. Возможно, лет через пять фронтенд-разработчики будут плохо разбираться в вёрстке, хотя сейчас в это верится с трудом.
Узкая специализация становится однозначным трендом, а про фуллстеков всё чаще говорят: «нельзя хорошо уметь и в бэк и во фронт». Но я с этим не совсем согласен. Да, учитывая современные реалии, когда люди идут в IT с конкретной целью, выбирая себе конкретную профессию, когда технологий всё больше и они всё сложнее, такое отношение к фуллстекам понятно. Но неужели нет исключений? Или неужели специалисту, которому интересно заниматься сразу всем, пусть и с не настолько глубокими знаниями в чём-то конкретном, нет достойного применения?
Возвращаясь в нулевые, возьмём условного студента, который защищал диплом на тему искусственного интеллекта (тогда термин «машин-лёрнинг» был как-то не в ходу), на первой работе он писал на Borland C++ Builder, попробовал себя в разработке мобильных игр для Symbian на Java, потом перешёл в веб-разработку на PHP, занимаясь и фронтендом, в том числе. Всю свою карьеру интересовался всем, смотрел как делают другие и предпочитал всё делать сам. Поработал с MySql, Angular, Postgres, Vue, MongoDB, React, RabbitMQ, Ext.js, Memchahed, Backbone.js. Вот он кто, бэкэндер или фронтендер?
Или специалист без такого бэкграунда, но фанат, для которого IT — это не только работа, но и хобби, который всё свободное время проводит за изучением технологий и работой с ними, давая форы коллегам, соблюдающим work-life баланс… Он плохо разбирается одновременно и в базах данных и в настройке Webpack просто потому, что в его голове не способно всё уместиться?
Не смотря на то, что бизнес не любит фуллстеков, я считаю, что они сейчас недооценены. Это разработчики, которые могут взять на себя бизнес-задачу, провзаимодействовать с дизайнерами, аналитиками, реализовать и фронт и бэк, задеплоить это всё в кубер. Без лишних созвонов, перепинывания задач туда-сюда, без блокеров, недопониманий и прочего. И, главное, без выгораний, потому что широкий спектр задач и технологий просто не дают соскучиться и погрузиться в рутину.
Но бизнесу важнее процессы, их масштабирование, взаимозаменяемость сотрудников и лёгкий найм. Бизнес готов за это платить двойную цену и тратить двойное время на разработку. Я не бизнесмен и понимаю, что, скорее всего, так выгоднее в долгосрочной перспективе.
...
561 views18:01