{"id":14277,"url":"\/distributions\/14277\/click?bit=1&hash=17ce698c744183890278e5e72fb5473eaa8dd0a28fac1d357bd91d8537b18c22","title":"\u041e\u0446\u0438\u0444\u0440\u043e\u0432\u0430\u0442\u044c \u043b\u0438\u0442\u0440\u044b \u0431\u0435\u043d\u0437\u0438\u043d\u0430 \u0438\u043b\u0438 \u0437\u043e\u043b\u043e\u0442\u044b\u0435 \u0443\u043a\u0440\u0430\u0448\u0435\u043d\u0438\u044f","buttonText":"\u041a\u0430\u043a?","imageUuid":"771ad34a-9f50-5b0b-bc84-204d36a20025"}

Поговорим о фронтенд-вакансиях

Привет, в этом материале я расскажу про текущую ситуацию на рынке фронтенд-вакансий (с точки зрения технологий, а не зарплат). Затрону темы портфолио и тестовых заданий.

В статье отсутствуют статистические данные, всё написанное — моё личное мнение. Чтобы слегка усилить «важность» моего мнения, скажу, что официально занимаюсь разработкой с 2012 года, это помогает мне выжить.

Для написания статьи я посмотрел:

  • вакансии работы в офисе в Москве (уровень Junior);
  • вакансии работы в офис в Москве (уровень Middle и выше);
  • вакансии удалённой работы на Stack Overflow jobs (уровень Middle и выше);
  • пообщался с коллегами.

Зачем?

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

Дата просмотра вакансий — 4 марта 2019 года, раннее утро (GMT+3).

Junior

Всего на HeadHunter по запросу «Frontend» найдено 1255 вакансий (не все из них про фронтенд).

По запросу «Junior frontend» — 63 вакансии (и не все из них Junior-разработчики).

По запросу «Верстальщик HTML» — 143 вакансии.

Всего по запросу «Верстальщик» — 341 вакансия.

Вывод 0: с вёрсткой заскочить в горящий поезд фронтенд-зарплат легче. Горящий, потому что со всех сторон давит реклама о том, как у нас весело (у нас и правда весело, но усилий приложить нужно порядком, как и везде).

Про вёрстку

Про вёрстку интересный расклад. Все просмотренные вакансии с фильтром оклада от 200 тысяч рублей (дабы нагулять аппетит) требуют знание HTML, CSS (что логично) и умение адаптивно верстать красивые интерфейсы (что нелогично, так как я не люблю вёрстку).

Вывод 1: вёрстку можно не любить, но лучше освежить свои знания и сверстать на досуге макет по последнему слову техники (Flex, Grid).

При устройстве на работу в качестве Middle-разработчика и старше у вас гораздо больше шансов делать то, что нравится. Речь не только про вёрстку. Например, при желании и возможности такого разделения в команде вы будете заниматься преимущественно автоматическим e2e-тестированием.

P.S. Cитуация с Remote-предложениями на SO ещё больше намекает на необходимость актуального навыка верстки. Кстати, на данный момент вакансий всего 46.

P.P.S. Я опросил знакомых русских middle-разработчиков и старше. Большинство не верстает (выборка крайне маленькая — восемь человек, но близка к моему опыту, я тоже очень давно не верстал). Зарубежные коллеги с моего последнего контракта верстают на 100% (опрошено четыре человека).

Middle

Если вы уверенно справляетесь с текущими задачами на должности Junior, то вы как минимум готовы к тому, чтобы смотреть на позиции Middle.

Я уверен, вас не испугает большое количество библиотек и инструментов в описании вакансии, так как в процессе работы на позиции Junior вы уже с ними познакомились. Однако вам придется усердно налечь на основы Javascript, чтобы быть готовым решать задачи на собеседовании на чистом Javascript.

Также будьте готовы к тому, что список технологий зачастую просто «копи-пастой» кочует из разных вакансий разных компаний.

Вывод 2: для выхода в средний дивизион вам строго необходимы знания нативного (Vanilla) Javascript.

Если добраться до уровня Middle без чтения на английском вы сможете, то дальше — увы.

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

Senior, Team lead

Вкусная позиция, большая ответственность.

Добавляйте в список того, что вам потребуется:

  • CI/CD, Docker, Kubernetes — как будете «поставлять свой продукт». Здесь вам на помощь придет коллега из цеха «админов», но это не точно.
  • Типизация (Flow или Typescript). Вы этому, скорее всего, научитесь на Middle-позиции.
  • Вёрстка и всё, что вокруг: SVG, Canvas, WebGL... (зависит от специфики компании).
  • Backend на любом из языков (в том числе подойдёт и Node.js), а также навыки работы с базами данных.
  • Практический опыт и понимание, как построить большое приложение.
  • Умение проводить code review.
  • Английский язык на уровне прохождения собеседований (не совсем актуально для русскоговорящих компаний, однако такие игроки на нашем рынке есть).

Вывод 4: знать нужно много, но экспертом быть не требуется. Вы можете хорошо знать только свой основной профиль и при этом быть хорошо оплачиваемым специалистом. Главное качество — показывать хороший результат самостоятельно. Вам дали задачу — вы её сделали.

Для позиции Team lead вам потребуется опыт руководства командой.

Вывод 5: не отказывайтесь стать руководителем команды будучи на любом уровне развития. В опыт «руководства» зачтётся даже то, что вы руководили email-рассылкой и парой верстальщиков, когда сами были верстальщиком.

Портфолио

Для устройства на позицию Junior — строго обязательно. В портфолио можно положить вёрстку макетов из интернета и прикрепить профиль на GitHub, где вы будете коллекционировать тестовые задания и ваши поделки.

Дальше до уровня Middle всё просто — у вас будет что показать, так как вы должны были что-то делать, пока работали на позиции Junior.

Senior-уровень потребует от вас крепкого проекта, над которым вы работали, в который внесли значимый вклад. Либо потребуется ваш хобби-проект. Я специально не пишу «вклад в opensource», потому что «вкладывать туда» обычно некогда.

Вывод 6: регулярно прокачивайте свой уровень. Берите ответственность на работе за какие-то фичи. Коллекционируйте заслуги и минимум раз в год обсуждайте повышение.

Позиция Team lead потребует внушительный проект за спиной или вы станете Team lead на текущей работе.

Вывод 7: на уровне Middle постарайтесь попасть в сильную команду. Смотрите и впитывайте: как проходят code review, как релизится проект, как происходят «планёрки».

Тестовые задания

Выполнение ТЗ для позиций Junior, Middle — строго обязательно. Если вам не дали ТЗ, задумайтесь, а не «шарашкина» ли это контора. Все сомнения должно развеять собеседование.

На позиции выше Middle тестовые задания чаще не дают, чем дают. На собеседовании вы решаете задачи, рассказываете о том, что умеете, знакомитесь с членами команды, задаёте вопросы. Такое собеседование может быть достаточно длинным по времени.

Итого

Технологии

Учим (актуализируем) вёрстку, разбираемся в типизации, читаем на английском.

Лирика

Первый шаг, как обычно, самый трудный. Формируйте портфолио из тестовых заданий и макетов. Тестовые задания иногда можно найти прямо на сайте компании в разделе с вакансиями.

Я считаю, рост из Junior в Middle (как в знаниях, так и в зарплате) — самый простой. Также на этом шаге вы наверняка сможете закрывать свои рядовые потребности.

Senior frontend developer — на сайтах с вакансиями выглядит красиво, особенно рядом с указанной зарплатой. Думаю, что потребуется три года минимум, начиная с того дня, когда вы начали работу на позиции Junior.

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

0
88 комментариев
Написать комментарий...
Evgeny Morozov

Много букав идите нахуй я скажу тем кто требует много от веб-разработчика, стаж им подавай в какой-то компании, а сами они не обучают на рабочем месте... Ещё какие-то тесты проходить, откуда черпать опыт - если его нету по некоторым пунктам? Я читаю требования ага это я знаю знаю JS понимаю немного, и в самом низу знания английского на уровне разговорного - я блть вам англичанин чтоле или переводчик с русского на английский... Я пользуюсь переводом в Гугл Транслите.
А верстать эти страницы, адаптивность, SVG, что-то в JS понимать, владеть этим изи - я думаю почти все умеют даже без знаний английского.

Соискатели которые составляют эти анкеты по поиску разработсчиков, идите вы заднее место со своим ЧАЕМ И ПЕЧЕНЬКАМИ И ВКУСНЯШКАМИ,
Ещё какие-то сверх ебанутые тесты нужно решить, задачи, готовься к дедлайну, вы только на мозг капаете... А объяснить простым языком не можете кто вам нужен и для каких задач.
АНГЛИЧАНИНА ИМ ПОДАВАЙ - всё умеющего... Только из-за этого я не рассматриваю ваши вакансии потому-что я не знаю разговорный английский. ВАШ КРУГ ПОИСКА ПРОГРАММИСТОВ СУЖАЕТСЯ КОГДА вы требуете знания английского, понимать 5-10% английских слов я понимаю но я не разговариваю на английском.

Так-же как и Англичанин не шарит за русский БАЗАР.

Ответить
Развернуть ветку
Александр Лазарев

Многие компании. Работают на аутсорсинг, и ты на прямую общаешься с заказчиками на английском. У нас в РБ все так it- компании работают.

Ответить
Развернуть ветку
_ ivanov

Я всегда думал что это выглядит так, есть дядя из бизнеса говорящий на английском, задача поступает ПМ/РП, далее все спускается ниже, вплоть до фронта.

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

Может на каком-то фрилансе(одиночка) я могу поверить

Ответить
Развернуть ветку
Александр Лазарев

У нас так все работают. Плюс команда может быть ещё состоит из Белорусов, индийцев, Чехов и т.д.
И с заказчиками сами. Эт 100%

Ответить
Развернуть ветку
_ ivanov

Плохи ваши дела. Бежать нужно от туда где на фронтендера вешают задачи менеджера и заставляют с кем-тот там общаться.

Проекет менеджер для этого существует.

Ответить
Развернуть ветку
85 комментариев
Раскрывать всегда