Для тех, у кого эта статья – первое знакомство со мной, напомню – я веду стажировки по веб-разработке последние 5 лет, в год через мои руки проходит около 20 стажеров. Я провожу много собеседований и очень тщательно выбираю, кто ко мне попадет, поэтому считаю, что имею неплохой срез по рынку. Сегодня хочу поговорить про шишки, которые набивают мои стажеры в поисках новых рабочих мест, и про то, как складывается их судьба после стажировки, если они не остаются в нашей компании. 

Давайте сразу определимся, почему мы говорим о фронтэнд разработчиках. Дело в том, что хотя у меня стажировка на fullstack, рынок переполнен людьми, которые пришли именно во фронтэнд. Основная озвучиваемая мотивация – «мне нравится видеть изменения, которые я делаю». 

Теперь перейдем к тому, почему в названии статьи есть негатив. Дело в том, что рынок фронтэнда, на мой взгляд, перегрет. Очень много людей очень быстро выучились быть фронтэнд-разработчиками. У меня нет точных цифр, но судя по тому, что дают нам разнообразные онлайн академии, на одного бэкэнда (причем независимо от стека технологий) приходится 10-20 фронтов. Соотношение, конечно, пугающее. 

Почему так происходит? По моей субъективной оценке, почти у всех онлайн академий курс построен в порядке HTML > JS > фреймворки > бэкэнд для стойких. Это в целом понятное построение – по мере прохождения ступеней увеличивается сложность заданий, происходит отсев. При этом для обучения фронтэнду на том, что на платформах называется «Основы JavaScript» или «Разработчик JavaScript. Уровень 1» не требуется практически никаких технических ресурсов, все может происходить на компьютере пользователя с минимальной настройкой тестовой среды. Опять же вышеупомянутое «сразу видеть изменения» никуда не девается, чем ниже уровень разработчика, тем раньше он хочет видеть результат своей работы. 

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

Не могу не заметить, что по данным hh.ru на март месяц 2023 года, число вакансий для джунов во всех областях уменьшилось и достигло исторического минимума. Компании оптимизируют расходы, на фоне этого хочется сразу готового специалиста, а не джуна с нулевым опытом работы. А вакансии джунов, которые мне попадаются в последнее время, все больше похожи на известный мем: “Предприятию требуется молодой специалист с опытом в отрасли 20 лет, знанием 5 языков, на зарплату кассира во «Вкусно и точка»”. Минимальный опыт работы джуна, который сейчас рассматривают многие знакомые мне компании – от года. 

Итак, давайте еще раз перечислим проблемы:

  1. Очень много людей на рынке фронтэнд разработки.

  2. Сам рынок при этом сокращается..

  3. Работодатель хочет релевантный опыт работы от года.

  4. Работодатель сплошь и рядом ищет на зарплату джуна человека с компетенциями и опытом миддла.

Что же делать тем, кто все же хочет «войти в айти», прошел курсы фронтэнда на каком-нибудь Яндекс.Практикуме, и теперь сидит грустный и ждет отклики на свое резюме? 

Не сдавайтесь! Терпение и труд, как известно, все перетрут. Хочется привести в пример опыт полковника Сандерса, который смог свой рецепт соуса к курице монетизировать на 1009 попытке. Старайтесь, не теряйте надежды, учитесь новому, и у вас все получится. 

Определитесь со своими целями. Очень важный момент, который многие упускают за конкретикой. Зачем именно вы учитесь на разработчика? Чего вы хотите достичь? Часто это не просто «найти какую то работу не за прилавком:, есть некая идеальная картина, как вы на удаленке, попивая кофе в 11 утра, сидите на зуме с отключенной камерой, например. Подумайте, конкретизируйте, это важно для следующего шага. 

Выберите востребованную технологию. Как сказал Брюс Уэйн Барри Аллену в недавней “Лиге справедливости”: его суперсила – деньги. Если ваша цель – комфорт и заработок, а не амбиции внутри одного стека технологий, этот шаг для вас. 

Большая сила программиста в том, что переучиваться с языка на язык намного проще, чем выучить программирование с нуля. Зная JavaScript, вы легко сможете освоить многие другие языки, намного легче, чем вам пришлось на изучении JS. Опять же, курсов даже на youtube – миллион, проходите на здоровье. Соответственно, вы можете осмотреть рынок вакансий, найти более популярный язык и за полгода переучиться на него. У меня есть знакомый, который изначально пошел по этому пути: проанализировал вакансии по предлагаемым условиям и сейчас счастливо работает java-разработчиком, хотя два года назад про программирование слышал только из телевизора. 

Научитесь проходить собеседования. К моему немалому сожалению, должен констатировать, что примерно 90 человек из 100 не умеют вести себя на собеседовании. Если вы хотите попасть в оставшиеся десять, вы должны развивать навыки самопрезентации. Проанализируйте свои сильные и слабые стороны, попробуйте пройти тестовое собеседование у родственников и друзей. Если есть знакомые HR, это еще лучше. Как известно первое впечатление сложно произвести дважды, а в условиях нынешней конкуренции на рынке оно становится особо важным. 

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

Обязательно указывайте, в какой отрасли работали до этого, это может быть важно работодателю. Я часто вижу в резюме стажеров «ранее работал в другой сфере, поэтому опыт не указываю». Но это в корне неправильный подход – ваш прошлый опыт может быть вашей козырной картой, которая выгодно вас отличает от других кандидатов. Он может сказать, например, что вы понимаете, что значит сделать работу в срок, и умеете работать в команде (а возможно, и руководить командой). Такое обязательно должно попасть в ваше резюме, не упускайте свой шанс. 

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

Попробуйте попасть на стажировку. Очень хорошая история – пройти стажировку, особо если она идет дольше месяца. Вам даже не обязательно попадать после этого в штат компании, это в целом очень хороший опыт как командной и коммерческой работы, так и взаимодействия с работодателем. Крайне полезно для резюме. 

Хочется в заключение пожелать всем соискателям веры в себя и удачи. Коллеги, я уверен, именно за вами будущее нашей отрасли. Старайтесь, не сдавайтесь, работайте над собой – и вы достигнете всех поставленных целей.

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


  1. little-brother
    16.04.2023 07:48
    -2

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


    1. Luciphur Автор
      16.04.2023 07:48
      +3

      с другой стороны, есть же популярный мем про PHP. Не фронтэнд конечно, но все же )))


    1. defaultvoice
      16.04.2023 07:48
      +4

      Эт вы с Angular.js/Backbone на реакт не переезжали. Вот там надо было вообще всё выкинуть и писать заново. Даже у sass билдер сменился. Скорость изменений во фронте сейчас гораздо ниже, чем была в каком-нибудь 2015-м и примерно сравнялась со средней температурой по IT


  1. Wyse
    16.04.2023 07:48
    +4

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

    Но самое забавное, я знаю какую то часть из всего перечисленного, сижу до сих пор в стадии "обучения", при этом видя как какой то чувак который клепает сайты чисто DIV'ами, зарабатывает деньги))))))))


    1. Luciphur Автор
      16.04.2023 07:48

      все очень верно подмечено. Курсы обычно дают тупо базовые знания, и то не полные. У нас среднее время адаптации человека после курса к реальной работе - от 3 месяцев до полугода, до этого постоянно надо разбираться что там и как человек делает. И дальше останавливаться вообще нельзя, надо постоянно учиться дальше, ибо неактуальным можно стать очень и очень быстро.


    1. Al81ru
      16.04.2023 07:48

      при этом видя как какой то чувак который клепает сайты чисто DIV'ами, зарабатывает

      Чувак освоил флекс и грид, уже достойно :)


  1. medvedouxerectus
    16.04.2023 07:48
    +1

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

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


    1. defaultvoice
      16.04.2023 07:48
      +1

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

      Ну вот и где они появляются-то? Открываем десяток случайных вакансий и что там? — TypeScript + React/Vue/Angular. Ни Svelte, ни SolidJS, ни Astro, ни чего ещё модно-молодёжного в требованиях нет


    1. director-rentv
      16.04.2023 07:48

      На мой взгляд, есть фундаментальные знания, всякие подходы к построению пользовательского интерфейса (например, разметка семантики текста, обработка состояний интерактивных элементов, правильные с т.з. удобства работы расположения и размеры интерактивных элементов), проектирование внутренней прослойки (паттерн "Команда", применение в т.ч. mv* паттернов). И это уже не зависит от использованных технологий


      1. medvedouxerectus
        16.04.2023 07:48

        Я бы сказал что это прикладные, а не фундаментальные знания. Как минимум все будет сильно зависеть от платформы (iOS VS Android, как пример), культуры (в арабском мире удобно и красиво будет отличаться от принятого в Китае), и времени (тут можно глянуть на разницу в правилах верстки в 90-х и сейчас).

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


  1. shsv382
    16.04.2023 07:48

    Спасибо за статью, особенно за конкретные советы. Могу добавить взгляд обучающегося, что:

    1. фриланс 90% компаний в принципе за опыт не считают

    2. Стажировка - круто, но...есть вечерняя стажировка хоть где-то? Или надо сразу идти ва-банк, увольняться с работы и идти на стажировку, где а) не факт, что платят и б) не факт, что тебя возьмут?

    3. Курсы курсам рознь, человек может быть изначально с профильной вышкой, но в смежной области (ИБ, сети и тд), может проходить курсы от таких же дуболомов на скиллбоксе, а может проходить курсы на английском языке от людей, работавших в FAANG, и курсы будут построены по принципу "вот вам основы - теперь копайте сами", но это никто слушать даже не хочет...

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


    1. Luciphur Автор
      16.04.2023 07:48

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

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

      И мне кажется изначально надо понимать, что стажер не обязательно в дальнейшем сотрудник. Многие компании выбирают сотрудника из нескольких стажеров. Я лично стажеров рассматриваю как трудовой резерв в том числе. Тем не менее, стажировка это шанс, чтобы вас заметили. Как вы им воспользуетесь - тут зависит от вас.


  1. Woodshox
    16.04.2023 07:48

    Учишь курсы какие нибудь RSS/theodinproject

    Крутишь опыт 3 года +

    Проходишь 20+ собесов на позицию мидл. Попутно подтягивая знания там где не достает именно для собеседований. И все, на первом испытательном сроке может быть отлетишь - да, набьешь шишки. На втором - уже нет.

    К тому же есть куча менторов которые мок собесы проведут, подготовят за условные 2000р в час. Profit.


    1. Luciphur Автор
      16.04.2023 07:48

      просто интересно, а реальный опыт работы по такой схеме у вас есть?


      1. Woodshox
        16.04.2023 07:48

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

        Вы пишите в опыт работы — фриланс.

        Кто то пишет в опыт работы время учебы на курсе. Те же ребята с Каты , сами советуют использовать время учебы у них в качестве опыта.

        А если взять какие то галеры , то они опыт нарисуют за вас, чтобы выгоднее вас продать. Так зачем мне терять деньги через галеры , которые рисуют мне опыт и продают меня дороже , если я эти могу сделать сам, и залететь на зп 20/30%+ от того что предложит галера