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

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

В статье отсутствуют статистические данные, всё написанное — моё личное мнение. Чтобы слегка усилить «важность» моего мнения, скажу, что официально занимаюсь разработкой с 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 комментариев
Написать комментарий...
Юрин Иван

Ну слушайте, давно же карты есть по вакансиям
к примеру
https://github.com/kamranahmedse/developer-roadmap

Ответить
Развернуть ветку
Dima Kotobotov

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

Ответить
Развернуть ветку
Mike Espoo

Ну в принцепе, так и есть.

Ответить
Развернуть ветку
Dima Kotobotov

я вижу что сейчас полно технологий освоив которые на уровне мастера, этот мастер никогда не сможет эти вложения окупить.
передаем привет всем кто изучает GO и когда-то изучал Dart и его экосистему. . .
Рабочий вариант на таких технологиях, это только их поверхностное освоение и доведение до уровня "мастера" непосредственно на рабочем проекте, когда тебе это совершенствование оплачивают, иначе нет смысла вообще вкатываться.
Но на рынке мы видим - что компании абсолютно не заинтересованны в развитии кадров, все хотят просто купить подешевле готовое, потом продать эти кадры подороже западному заказчику (основная схема бизнеса).

Ответить
Развернуть ветку
Mike Espoo

Забавно читать когда ноют что по GO в Мск. дешевле 250,000 никого толкового нет.

Ответить
Развернуть ветку
Dima Kotobotov

Ребята 2 года например ищут найти не могут "толкового мидла", ну казалось бы, какие проблемы возьми пару человек которые есть на рынке, вложись в них и получи этих самых "толковых мидлов" которых ты не можешь найти.
Но конторы которые перепродают кадры, они знают что это инвестиция, при чем очень дорогая, при чем с очень коротким жизненым циклом за который можно попытаться ее окупить. Самим такие инвестиции делать не выгодно (иначе они бы так и делали).

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

Проблема в том, что такие сваливают через год)

Ответить
Развернуть ветку
Mike Espoo

Любые сваливают если находят место получше.
Реальный кейс, приехал DevOps из города О на зп 190,000 поработал год, решил что вырос из фирмы и нашел работу на 250,000 в Р.

Если человека что-то не устраивает, то рано или поздно свалит.
1 - Есть возможно увеличить зп на 30%+.
2 - Отношения в коллективе.
3 - Переработки.
4 - Серая зп.
И другое.

Ответить
Развернуть ветку
Denis Mingulov

а какая вторая буква в городе? М или нет?

Ответить
Развернуть ветку
Mike Espoo

Это не суть важно. Таких историй навалом.

Я и сам, так же сделал.
Приехал из города В. Поработал пол года в хорошей фирме. Сменили руководителя на клоуна, неделю помучился и ушел на зп на 30% больше руководителем.
Но до сих пор жалею, что ушел потому что фирма хорошая, но работать, когда у тебя руководитель клоун - это жесть.

Ответить
Развернуть ветку
Denis Mingulov
Это не суть важно. Таких историй навалом.

Вот именно, поэтому это совершенно нормально и не важно.

А город на О и потом с М - большая редкость здесь.

Ответить
Развернуть ветку
Mike Espoo

В городе М, навалом людей из городов с любой буквой :)
Я не про Вашу текущую локацию пишу.

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