«Разработчик переднего конца» или кто я по профессии

three-cimons.svg

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



Какофония профессий


«Веб-дизайнер», как понятие в русскоязычном пространстве совершенно не совпадает с аналогичным понятием в англоязычном пространстве. Русскоязычный веб-дизайнер занимается составлением коллажа и макетов будущих страниц. Продвинутые веб-дизайнеры, чтобы отличаться от тех, низкоквалифицированных дизайнеров, дополнительно вешают на себя ярлыки «UI/UX дизайнера» или «дизайнера интерфейсов», подразумевая, что они предварительно думают головой, прежде чем рисовать коллажи и макеты будущих страниц и приложений. А особо продвинутые называют себя «арт-директором» или еще как-то так. Тех, кто не успел повесить себе медаль «UI-эксперта», пренебрежительно дразнят операторами фотошопа. Операторы фотошопа же или вообще новички в отрасли целенаправленно пытаются получить гордый титул «UI/UX», подразумевая, что они тут не хухры-мухры, а ребята с серьезными намерениями.


И еще у нас есть отдельная, в последнее время вымирающая, профессия «веб-верстальщика», которая подразумевает перевод нарисованных дизайнером картинок в удобочитаемый и адекватный html+css и иногда с примесью javascript. Если веб-верстальщик знает больше, чем просто набор тегов и немного css, называться «веб-верстальщиком» ему почему-то становится стыдно, и он вешает на себя ярлык «фронтэнд-разработчика», подразумевая, что он делает полноценные приложения в браузере, а не просто режет картинку на дивы и таблички или берет css-бутстрап и просто переопределяет переменные для CSS. Еще более модное название той же самой профессии даже не хочется переводить с английского, потому как по-русски оно звучит не достаточно круто — «клиент-сайд девелопер». По-русски это бы был обычный «разработчик приложений в браузере», а одно время гуглотранслейт буквально это переводил, как «разработчик переднего конца», что звучит скорее оскорбительно. Интересно, что появилась такая профессия в далекие времена ie6, opera8 и ff2 и именно потому, что тем людям, у кого было воспитано чувство прекрасного, не хватало сил и терпения научиться создавать html-файлы, которые одинаково хорошо отображаются в этих самых ie6, opera8 и ff2.


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


Систематизируй это


Правильному веб-дизайнеру просто необходимо уметь на выходе выдавать не красивую psd-ai-sketch картинку, а набор html+css+js, полностью готовый к интеграции в существующее приложение. В итоге веб-дизайнер должен еще быть хорошим веб-верстальщиком. Само собой, голову ему тоже стоит использовать в своей работе, поэтому «дизайнер-интерфейсов» как понятие тоже должно отсутствовать. «Веб-дизайнер» и точка.


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


Правильного фронтенд-девелопера стоит переименовать в простого джаваскрипт-разработчика и не выделываться, потому как мириады инструментов, созданных для веба, принципиально не отличаются от той массы инструментов для какого-либо другого окружения, будь до java, ruby, PHP или еще что-нибудь. Руби-разработчик остается руби-разработчиком вне зависимости от количества гемов и инструментов, используемых в работе. И почему-то его отличают от эрланг-разработчика, несмотря на то, что и тот и другой является в общепринятом смысле «бекэнд-разработчиком». А вот фронтенд-девелопер внезапно должен уметь одинаково хорошо программировать на es6 и react-js и в это же время писать отличный код на TypeScript с AngularJS. Современные реалии должны отличать TypeScript-разработчика от elm-разработчика и знания клиентских фреймворков должны позиционироваться точно так же, как и знания фреймворков у любого разработчика. Джанго-разработчик и разработчик, умеющий писать плагины для ansible принципиально отличаются в базовых знаниях, несмотря на то, что и то и другое написано на питоне.


И читая (или составляя) резюме с пометкой «UX/UI-дизайнер» в первую очередь нужно обращать внимание на то, что кандидат не знает как правильно составить html, не знаком с технологиями браузеров и возможно плохо владеет графическими инструментами для составления полноценных макетов, а не то что этот человек отлично разбирается в том, какого размера кнопку нужно поставить в правый верхний угол и как уменьшить количество кликов, чтобы пользователь зарегистрироваться. C фронтенд-девелопером приблизительно такая же логика — в первую очередь видно и понятно, что работать над интерфейсами ему не интересно и он не умеет, а не то что он с закрытыми глазами на ощупь отличает версию ангулара.


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


lamp.svg

Комментарии (0)

© Habrahabr.ru