Backend-разработчиком становятся не после курса «с нуля до оффера», а когда появляется сервис, который можно открыть, сломать и починить. Рекрутер в 2026 смотрит не на список библиотек, а на то, умеете ли вы принять запрос, сохранить данные, отдать ошибку понятным кодом и объяснить, что будет, если база ляжет.
Ниже — путь до первой работы: какой стек выбрать, какой учебный проект закрывает сомнение за 90 дней, как собрать резюме и куда откликаться. Оффера через три месяца этот текст не обещает. Он обещает критерий готовности, который можно проверить по вакансиям, а не по ощущению «уже много учил».
Коротко:
- Выберите один язык и один веб-фреймворк. Python+FastAPI, Java+Spring или Go — любой рабочий вход, если доведён до сервиса с БД, а не до туториала.
- Артефакт важнее сертификата: API с авторизацией, миграциями, тестами и README, где честно написано, чего нет.
- Первая роль — junior backend / intern, иногда «fullstack с уклоном в API». Не «middle без коммерческого опыта».
- Резюме строится вокруг задач сервиса, не вокруг курса. Стек пишите только тот, которым реально пользовались в проекте.
- Вилку зарплаты собирайте фильтрами на вакансиях backend, а не по чужим скринам в чатах.
Чем backend занят в первый месяц
На входной роли вас почти никогда не просят спроектировать платёжный контур с нуля. Типичный первый месяц: починить баг в существующем эндпоинте, добавить поле в модель, написать миграцию, покрыть кейс тестом, не сломать соседний сервис. Если эта картина вам скучна — роль выбрана по хайпу, не по работе.
Backend в продукте и в аутсорсе чуть разный. В продукте чаще живут в одном домене месяцами. В заказной разработке чаще прыгают между задачами клиента. Для первой работы это не важно: и там, и там покупают человека, который не боится чужого репозитория и умеет задать вопрос до того, как перепишет полсервиса.
Отдельно держите в голове, чем backend не является. Это не «писать SQL всю жизнь» и не «знать все паттерны». Это поставка: запрос пришёл, данные согласованы, побочные эффекты понятны, логи есть. Как отличить backend от frontend и fullstack на старте — в материале как стать frontend-разработчиком и как стать fullstack без распыления.
Кому этот путь подходит — и кому лучше другая дверь
Backend имеет смысл, если вам интересно, как устроены данные и границы системы, а не только как выглядит экран. Если кайф только от кнопок и анимации — идите во frontend, не мучайте себя ORM. Если нравится ломать сценарии и описывать баги — QA часто быстрее даёт первую зарплату, чем разработка с нуля.
Смежный опыт помогает, если его перевести на задачи сервиса. Поддержка, которая эскалировала тикеты в разработку, уже видела контракт API глазами пользователя. Админка Excel-отчётов — слабый, но честный заход в «данные должны сходиться». Курсы без репозитория не считаются опытом. Стажировка с реальными тикетами — да; как искать такие входы, разобрано в стажировке в IT.
Если коммерческого кода нет совсем, не начинайте с десяти вакансий. Сначала один сервис. Потом отклики. Иначе воронка будет шуметь, а причина тишины останется той же: нечему открыть ссылку. Общий вход в IT без ставки только на разработку: как найти работу в IT.
Какой стек выбрать и что можно не учить в первый год
Смотрите не рейтинги языков, а объявления junior/intern в вашем регионе и на удалёнке. Откройте каталог backend, отфильтруйте junior и выпишите стек, который повторяется. Если в десяти вакансиях Python и PostgreSQL, а Kubernetes в одной — Kubernetes не ваш первый квартал.
Рабочая минимальная карта:
- Язык. Один. Синтаксис, типы или их отсутствие, ошибки, пакеты, как запускать тесты.
- HTTP и REST. Методы, коды, идемпотентность на уровне «понимаю, почему повторный POST опасен».
- База. Одна реляционная. Таблицы, ключи, миграции, простой JOIN, транзакция. Не «все диалекты SQL».
- Фреймворк. FastAPI, Django, Spring, Express, Gin — тот, что в выбранных вакансиях. Карта Python-входа: Python roadmap, Java — Java roadmap.
- Git и PR. Ветка, коммит с смыслом, описание, что проверить.
- Тесты. Хотя бы на счастливый путь и одну ошибку валидации. Без этого проект выглядит как черновик.
Можно отложить: Kubernetes, Kafka, микросервисы «для портфолио», DDD-простыни, leetcode как единственную подготовку. Алгоритмы полезны, если вакансия их явно ставит. Если вакансия про Django-админку — готовьте админку. Карта навыков по грейдам, когда дойдёте до сравнения себя с middle: что должен знать backend-разработчик.
План на 90 дней: один сервис, не десять курсов
Цель квартала — не «пройти модули». Цель — репозиторий, который вы можете разобрать вслух за 15 минут. Дальше план жёсткий, потому что мягкий план превращается в бесконечный курс.
- Дни 1–21. Язык + HTTP + Git. Сделайте три маленьких скрипта и один эндпоинт «ping». Если за три недели не получается запустить сервер локально — меняйте формат учёбы, не добавляйте второй язык.
- Дни 22–50. Сервис с доменом. Заказы, тикеты, привычки, инвентарь — что угодно, где есть сущности и статусы. Регистрация, логин, CRUD, пагинация, ошибки 4xx/5xx, миграции.
- Дни 51–70. Тесты, Docker Compose с базой, простой CI (линтер + тесты). README: как поднять, что сделано вами, что не сделано, какие упрощения.
- Дни 71–90. Резюме, одно сопроводительное под шаблон вакансии, 15–25 точечных откликов, разбор отказов. Не 200 кнопок «откликнуться».
Если работаете полный день, растяните тот же объём на 4–5 месяцев. Сжимать квартал в три недели курсом с ИИ-кодом почти всегда даёт репозиторий, который вы сами не объясните. На собеседовании это вскрывается первым вопросом «почему так».
Пример 1. Учебный API заказов — что должно быть в репозитории
Вакансия, под которую собран проект: junior backend, Python, PostgreSQL, REST, тесты желательны, коммерческий опыт не обязателен.
Сервис заказов. Пользователь регистрируется, создаёт заказ со статусами «создан / оплачен / отменён», смотрит список своих заказов. Админ (один пользователь в сиде) видит все заказы.
Стек: Python, FastAPI, SQLAlchemy, PostgreSQL, Alembic, pytest. Авторизация: JWT. Есть миграции, docker-compose, GitHub Actions: ruff + pytest. Нет платежей, нет очередей, нет админки с UI — это сознательно.
В README: как поднять, какие эндпоинты, три известных ограничения, ссылка на коллекцию запросов. В коде нет скопированного туториала «todo app» один в один: статусы заказа и правило «нельзя отменить оплаченный без роли» — ваши.
Почему это закрывает экран: есть границы системы, данные, ошибка, тест, запуск одной командой. Рекрутеру не нужно верить курсу. Ему нужно открыть README. Если проекта нет — письмо и резюме не спасут; сначала артефакт, как в логике резюме без опыта.
Пример 2. Было / стало в резюме junior backend
До:
Backend-разработчик. Знаю Python, Django, Docker, Kubernetes, REST, SQL, Git. Прошёл курс на 400 часов. Ищу работу в дружной команде. Быстро учусь.
После:
Junior backend (Python). Учебный API заказов: регистрация, JWT, статусы, PostgreSQL, миграции, pytest, Compose. Репозиторий: [ссылка]. Коммерческого стажа нет. Готов к тестовому на 4–8 часов в том же стеке.
Стек по факту проекта: Python, FastAPI, PostgreSQL, Alembic, Docker Compose, Git. Kubernetes не использую — не указываю.
Разница не в «скромности». Разница в проверяемости. Как описывать проект целиком — в как описывать проекты в резюме; как не свалить кладбище аббревиатур — в как указывать стек. Отдельный разбор шапки и опыта: резюме backend-разработчика.
Как искать первую вакансию, чтобы не кормить пустую воронку
Фильтр «backend + junior + удалёнка + без опыта» в 2026 узкий. Это нормально. Расширяйте не титулом «middle», а соседними формулировками: intern, trainee, junior developer, «разработчик Python», «инженер-программист». Читайте описание задач. Если в первый месяц ждут Kafka и on-call ночью — это не ваш слот, даже если в заголовке junior.
Отклик без письма часто теряется. Короткий комментарий с ролью, ссылкой на сервис и готовностью к тесту сильнее простыни про мотивацию. Шаблоны: письмо без опыта и генератор письма как черновик, не как финальный текст.
Не откликайтесь на сто вакансий за вечер. Десять точных лучше. Если тишина на десяти похожих — чините доказательство или сегмент, а не длину резюме. Диагностика: почему не отвечают на отклики. Проверяйте объявление на мошенничество до тестового с «предоплатой обучения»: как проверить вакансию.
Про деньги: не ставьте в резюме цифру «как у middle в телеграме». Откройте живые вакансии с указанной вилкой, отфильтруйте junior/удалёнку/страну и соберите свой коридор. На скрининге отвечайте коридором и готовностью обсудить формат, а не одной круглой суммой. Как говорить об ожиданиях: ожидания по зарплате.
Что спросят на собеседовании — и как не утонуть в leetcode
Типичный контур junior backend: скрининг HR, разбор проекта, вопросы по HTTP/SQL/языку, иногда живой код или тестовое. Готовьте проект как историю: задача, ваша роль, ограничение, что сломалось, как чинили. Не «я использовал FastAPI». Формула рассказа: как рассказать о проекте.
Имеет смысл уметь вслух:
- чем PUT отличается от PATCH на вашем ресурсе заказа;
- что будет при двух одинаковых POST создания заказа;
- зачем миграции, а не «поправлю руками в проде»;
- как поймать N+1, даже если в учебном сервисе его ещё нет;
- что лежит в логах при 500.
Тестовое делайте в том объёме, который указан. Двадцатичасовой бесплатный прод — повод отказаться и объяснить почему; скрипт и границы: когда отказаться от тестового и как подходить к тестовому. Подготовка по блокам: разбор вопросов.
Частые вопросы
С какого языка начинать в 2026?
С того, который повторяется в junior-вакансиях, на которые вы реально готовы откликнуться. Python часто мягче на входе, Java — ближе к энтерпрайз-контуру, Go — к инфре и сервисам. Три языка сразу — способ не дойти до сервиса.
Нужен ли компьютерные науки диплом?
Нет как обязательный билет. Нужно умение читать чужой код, гуглить документацию и не врать про объём проекта. Диплом помогает в отдельных компаниях и на визовых треках — это не замена репозитория.
Сколько проектов нужно в GitHub?
Один доведённый сильнее пяти брошенных. Второй имеет смысл, если первый совсем игрушечный или если хотите показать другой стек под конкретную вакансию. Не коллекционируйте клоны туториалов.
Можно ли сразу на удалёнку без опыта?
Иногда да, чаще нет. Junior+remote — узкий сегмент. Имеет смысл смотреть гибрид, офис, стажировку и remote intern. Разбор: удалённая работа для junior и удалёнка без опыта.
Стоит ли платить за карьерный центр курса?
Платите за обратную связь по вашему репозиторию и резюме, не за обещание трудоустройства. Разбор резюме можно сделать отдельно в разборе CV, не покупая годовой «сопровождение до оффера».
Когда писать middle в заголовке?
Когда есть коммерческие задачи, которые вы вели сами: оценка, декомпозиция, прод, инциденты. Учебный API этого не даёт. Заголовок middle без стажа режет воронку, а не ускоряет её.
Что сделать сейчас
Откройте десять backend-вакансий с пометкой junior или intern. Выпишите стек, который повторяется минимум в четырёх. Зафиксируйте один язык и один фреймворк. Сегодня же начните сервис с одной сущностью и статусами — не новый курс.
Когда README и тесты появятся, соберите резюме вокруг этого сервиса и одно короткое письмо. Прогоните файл через разбор резюме, откликнитесь на несколько конкретных слотов, а не «в IT вообще». Если через две недели тишина — возвращайтесь к артефакту, а не к пятому языку.