
Junior frontend-разработчик в 2026 году стартует с 50 000–80 000 ₽ — это медиана предлагаемых зарплат на hh.ru. Middle уже получает 140 000–250 000 ₽. Senior в Москве — 300 000–400 000 ₽, в регионах на треть ниже. А «средняя зарплата frontend по России», та самая цифра около 225 000 ₽, которую вам выдаст любой агрегатор, считает по всем грейдам сразу. Новичку она врёт втрое.
И вот что не пишут на лендингах: 50–80 тысяч — это самый скромный разработческий старт в ИТ. Ниже, чем у питониста. Ниже, чем у мобильщика.
Почему профессия, где вакансий море, платит на входе меньше всех?
Потому что вход во frontend — самый низкий из всех разработческих. Сверстал страницу, выучил JavaScript — и ты формально junior. Низкий порог означает толпу на входе: на одну junior-вакансию приходят десятки выпускников курсов с одинаковыми сертификатами. А где толпа — там нижняя граница вилки. Дальше я разберу, сколько реально платят по ступеням, почему джунский старт перегрет, и главное — какие рычаги именно во frontend поднимают зарплату быстрее, чем годы стажа. Их четыре, и три из них вы включаете сами.
Антон, двадцать восемь, бывший менеджер по продажам из Самары. Решил во frontend по самой частой причине — посмотрел зарплаты. Увидел «middle 200 тысяч», прикинул, что через год будет там, и пошёл учиться. Полгода на курс, аккуратный сертификат, три проекта из методички. React в резюме — как просили вакансии.
Дальше — девять месяцев рассылки. Около двухсот откликов, десяток собеседований, один оффер. Junior-верстальщик в местной веб-студии, 55 тысяч рублей. Не 200, которые он увидел в первый день. И даже не 80 — нижняя граница оказалась его границей.
А его знакомый по тому же курсу, Денис, вышел на 95 тысяч. Тот же React, тот же срок учёбы. Разница: Денис не остановился на React. Доучил TypeScript, прикрутил к проектам бэкенд на Node, и в резюме у него было написано не «junior-верстальщик», а «fullstack-джун». Одно слово сдвинуло вилку почти вдвое.
Вот про это вся статья. Не про то, сколько платят frontend вообще, — а про то, почему два джуна с одним React получают разные деньги. И что делает второй, чтобы зарабатывать больше.
Когда агрегатор пишет «средняя зарплата frontend 225 000 ₽», он не врёт. Он складывает в одну корзину вчерашнего выпускника курса и архитектора с восемью годами опыта.
Считают по-разному, и в этом весь подвох. hh.ru показывает медиану по вакансиям — то, что работодатели предлагают в объявлениях. Хабр Карьера и Dream Job дают среднее по опросам сотрудников. Среднее всегда выше: один senior из крупного продукта с зарплатой 400 тысяч перетягивает на себя десяток джунов по шестьдесят. В итоге «средняя» описывает человека, которого не существует в природе, — математический призрак между стажёром и сеньором.
Реальная вилка по грейдам на 2026 год выглядит так. Junior — 50 000–80 000 ₽, первый год под присмотром, по медиане предлагаемых зарплат на hh.ru. Middle — 140 000–250 000 ₽, костяк команд. Senior — в Москве 300 000–400 000 ₽, в регионах на тридцать-сорок процентов ниже, то есть 180 000–250 000 ₽. Три ступени. Расстояние между первой и третьей — шести-семикратное.
Запомните нижнее число. 50–80 тысяч — это то, с чего вы реально начнёте. Не «до 250 000 ₽», как обещает баннер. До 250 — это другой конец той же лестницы, и до него года три.
Вот чем frontend-вилка отличается от соседних. У питониста зарплату двигает домен — backend, данные, ML. У тестировщика — автоматизация. А во frontend главный множитель внутри грейда — насколько вы дефицитны. React знают все, кто прошёл курс. За «как все» и платят как всем — по нижней границе.
Дефицит во frontend-2026 называется конкретно: TypeScript.
Это JavaScript со строгой проверкой типов, и за три года он превратился из плюса в ожидаемый минимум. Новые вакансии всё чаще пишут «TypeScript обязателен», а не «будет плюсом». Джун на голом JavaScript и джун с уверенным TypeScript — это два разных ценника при одинаковом сроке учёбы. Первый идёт по нижней границе, второй уже на её середине. Денис из начала статьи поднял свой оффер не магией — он просто перестал быть «как все».
Следующий слой дефицита — глубина, а не широта. Работодателю не нужен список из трёх фреймворков на уровне «прошёл вводный урок». Ему нужен один — React или Vue, — на котором вы реально собрали и довели до прода приложение. Джун, который собрал три проекта на одном фреймворке, стоит дороже того, кто пощупал пять по верхам. Рынок 2026 года доплачивает за доказанную глубину, а не за длину строчки «технологии» в резюме.
Отсюда практический вывод, который стоит денег. Если вы выбираете frontend ради зарплаты, не гонитесь за количеством технологий в резюме. Гонитесь за тем, чего на рынке меньше, чем спроса. TypeScript плюс один глубоко освоенный фреймворк бьёт «знаю React, Vue и Angular по верхам» — и в деньгах тоже.
Есть рычаг, который двигает вилку резче, чем любой отдельный навык. Это выход из чистого frontend в fullstack.
Frontend-джунов на рынке больше всего — именно потому, что вход самый низкий. Это и есть самая плотная, самая перегретая зона, где десятки одинаковых резюме конкурируют за одну вакансию. Стоит добавить к фронту бэкенд — обычно Node.js, тот же знакомый JavaScript на стороне сервера, — и вы выходите из этой толпы. Fullstack-джунов в очереди заметно меньше, а закрывают они вдвое больше задач. Работодателю выгоднее один человек, который тянет и интерфейс, и сервер, чем два узких.
Денис сделал ровно это. Не выучил новый язык — взял тот же JavaScript и научил его работать на бэкенде. Шаг небольшой по усилию, потому что язык остаётся прежним. Эффект на зарплату — несоразмерно большой, потому что вы перестаёте быть взаимозаменяемым верстальщиком и становитесь человеком, который закрывает фичу целиком.
Это не значит, что fullstack — обязательный путь для всех. Глубокий чистый frontend в сильной продуктовой команде оплачивается отлично, и сеньор-фронтендер на сложном интерфейсе стоит дороже среднего фуллстека. Но если вы джун и хотите выскочить из перенасыщенной нижней зоны быстро — fullstack один из самых коротких способов это сделать.
Грейд и стек — это про вас. Ещё два множителя — про то, где и на кого вы работаете.
Индустрия. Один и тот же middle-frontend в веб-студии на потоке лендингов и в продуктовой команде финтеха получает разные деньги при равном опыте. Там, где интерфейс приносит компании прямую выручку — финтех, крупные продукты, экосистемы, — frontend стоит дороже, чем там, где он просто «надо сделать сайт клиенту». Меняя не грейд, а индустрию, вы можете поднять зарплату, оставаясь на той же ступени. Это рычаг, который джуны почти не используют, потому что в первый год хватаются за любой оффер, — а зря, потому что первый оффер задаёт траекторию.
Удалёнка. География всё ещё делит зарплаты: senior в регионе получает на тридцать-сорок процентов меньше московского. Но frontend — профессия, где удалёнка норма, а не привилегия. И тут география начинает стираться. Middle из Самары, нанятый московской продуктовой командой на удалёнку, получает московскую вилку, оставаясь в самарских ценах на жизнь. Региональный дисконт исчезает не когда вы переезжаете, а когда расширяете поиск на удалённые вакансии. Этот рычаг вы тоже держите сами — его включает не прописка, а формат занятости, который вы готовы рассматривать.
Сложите рычаги. Junior на голом JavaScript в региональной студии — нижняя граница, 50–60 тысяч. Middle с TypeScript, с fullstack, на удалёнке в продуктовой команде — верхняя, под 250. Это один человек через два-три года, если он тянул не случайные задачи, а выбирал дефицитное и работал на тех, кто за это платит.
Теперь честно, без рекламного оптимизма. Войти во frontend ради денег в 2026-м труднее, чем три года назад, — и именно из-за низкого порога входа, который кажется плюсом.
Низкий порог работает против новичка. Раз войти легко, входят все: курсы выпустили волну frontend-джунов, и сертификат об окончании есть у каждого второго в очереди. Сертификат перестал отличать. Рынок при этом ушёл от джунов: 51 процент вакансий требуют опыта от одного до трёх лет, ещё 25 процентов — от трёх до шести. На голого новичка остаётся узкая щель, и за неё конкурируют десятки таких же. От джуна нередко ждут, чтобы он с первой недели работал почти как middle. Поиск первой работы растягивается на шесть-двенадцать месяцев — Антон со своими девятью месяцами не исключение, а норма.
Отсюда разрыв, на котором ломаются ожидания. Баннер обещает «middle-зарплату через год после курса». Реальность: после года получаются 55 тысяч и студия, а не 200 и продукт. Не потому что курс обманул в фактах — middle действительно получает 200. Просто между «выучил» и «дошёл до middle» лежит не год, а три-четыре, и первый из них — это нищеватый junior-старт, про который на вебинаре говорят скороговоркой.
«Раз рынок переполнен, а старт нищий — может, и не лезть?» — резонный вопрос, и большинство задаёт его слишком поздно, уже потратив полгода. Ответ зависит от того, как вы входите. Если так же, как все — прошёл курс, выучил React, разослал сто одинаковых резюме, — то да, вы неотличимы от остальных ста человек в очереди, и старт будет нищим. Переполнен рынок именно одинаковыми. Не переполнен — теми, у кого TypeScript не «будет плюсом», а уже в проектах, кто умеет в бэкенд, у кого живое портфолио с развёрнутыми приложениями. Перенасыщение бьёт по тем, кого легко заменить. Перестаньте быть заменимым — и нижняя граница вилки перестанет быть вашей.
Сложите всё в одну формулу. Ваша зарплата во frontend = грейд × стек × широта роли × индустрия × формат занятости. Грейд растёт сам, с опытом, медленно. Остальные четыре множителя вы выбираете — и каждый двигает вилку сильнее, чем лишний год в случайной студии.
Практически это значит вот что. Не учите «frontend вообще» — целая отрасль уже это сделала, и они стоят в очереди впереди вас. Решите, какая зарплата ваша цель, и идите от неё назад. Нижняя граница — это голый React в студии на потоке. Чтобы выскочить из неё быстро, добавляйте дефицитное: TypeScript как обязательный минимум, не как плюс; глубину в одном фреймворке вместо коллекции из пяти; шаг в fullstack, чтобы выйти из самой плотной очереди; прицел на продуктовую индустрию и удалёнку вместо первой попавшейся студии у дома.
Если не уверены, ваш ли это путь вообще по складу и бэкграунду — frontend подходит не всем, и честнее проверить это до того, как потратите полгода на курс. Пройдите Профтест — короткий тест на портале подберёт направление в ИТ под вашу целевую зарплату и склонности и покажет, с какой ступени и в какой роли вам реально стартовать. Тест бесплатный, а полгода учёбы не в ту сторону — нет.
Вернёмся к двум джунам с начала. Антон на 55 тысячах, Денис на 95. Оба прошли один курс, оба выучили один React. Разница не в React — React у них одинаковый. Денис просто перестал быть как все, а Антон — нет. Frontend платит не за то, что вы умеете верстать. Он платит за то, насколько вас трудно заменить.