Что это простыми словами
Backend-разработчик (или просто «бэкендер») отвечает за всё, что вы не видите, но что работает за кадром: хранение пользователей в базе данных, обработка заказов, отправка уведомлений, логика корзины в интернет-магазине.
Аналогия: представьте ресторан. Клиент сидит за столиком и наслаждается едой — это фронтенд (то, что видит человек). А кухня, где повара готовят, кладовая, где хранятся продукты, и повар, принимающий заказы — это бэкенд. Вы этого не видите, но без кухни ресторана бы просто не было.
Официальное определение
Теперь, когда суть понятна, вот как эту роль описывают в вакансиях. Такую формулировку вы будете получать от заказчика и видеть в резюме.
«Backend-разработчик — специалист, реализующий серверную часть веб-приложения: бизнес-логику, взаимодействие с базой данных и API (программный интерфейс для обмена данными)».
Разберём по словам. «Серверная часть» — то, что работает на удалённом компьютере (сервере), а не в браузере пользователя. «Бизнес-логика» — правила, по которым работает приложение: например, «если пользователь оплатил заказ, отправь ему письмо». «API» — способ, которым две программы общаются друг с другом (как курьер, который передаёт информацию между кухней и официантом).
Что делает за обычный день
Backend-разработчик пишет код, который обрабатывает данные и принимает решения. Например, когда человек нажимает «Купить» на сайте, фронтенд отправляет этот запрос на сервер, а бэкенд проверяет наличие товара на складе, списывает деньги, создаёт заказ и отправляет подтверждение — всё это делает бэкендер.
Также бэкендер проектирует базы данных — это упорядоченные хранилища информации (как таблица в Excel, только гораздо мощнее). И пишет API — это набор правил, по которому разные части приложения обмениваются данными.
Из чего состоит направление
В бэкенде нет единого набора технологий — всё зависит от выбранного языка программирования. Вот основные языки, на которых пишут бэкенд, и самые популярные решения в каждом:
Python — универсальный, простой для старта. Фреймворки: Django (готовый набор инструментов), FastAPI (лёгкий, для микросервисов).
Java — строгий и надёжный, стандарт для крупных компаний. Практически всегда используется Spring (в частности Spring Boot) — фреймворк, который значительно ускоряет разработку.
Node.js — JavaScript на сервере. Фреймворки: Express (самый популярный), NestJS (структурированный, для крупных проектов).
PHP — классика, до сих пор очень востребован. Фреймворки: Laravel (самый популярный), Symfony (для крупных проектов), 1С-Битрикс (CMS для сайтов, особенно в России).
C# — от Microsoft, активно используется в корпоративной среде. Основной фреймворк: ASP.NET Core.
Go — быстрый и лёгкий, набирает популярность в высоконагруженных системах.
Kotlin, Rust, Ruby — менее массовые, но с преданным сообществом.
Важно: человек, пишущий бэкенд, почти всегда работает на одном языке. Это ключевое отличие от фронтенда, где специалисты иногда пересекаются между языками.
Инструменты простыми словами
Инструменты бэкендера удобно разложить по четырем слоям — от самого важного при отборе к наименее важному.
Слой 1. Язык — фундамент, без него никуда.
Это самое главное при отборе. Бэкендер — это прежде всего языковой разработчик: Python-разработчик, Java-разработчик, Node.js-разработчик и так далее. Навыки между языками не переносятся.
Слой 2. Фреймворк — «школа», в которой человек работает. В бэкенде фреймворк идёт рука об руку с языком и тоже важен при отборе.
Python: Django, FastAPI, Flask
Java: Spring Boot
Node.js: Express, NestJS
PHP: Laravel, Symfony, 1С-Битрикс
C#: ASP.NET Core
Слой 3. ORM — инструмент, который превращает записи из базы данных в объекты в коде и обратно. Помогает работать с данными, не зная специальных запросов.
Django ORM (встроен в Django)
SQLAlchemy (универсальный для Python)
Hibernate (Java), Entity Framework Core (C#), Eloquent ORM (PHP)
Prisma, Drizzle ORM (Node.js)
Слой 4. Инструменты — не привязаны к языку, осваиваются быстро.
Redis — «быстрый склад»: хранит часто используемые данные в оперативной памяти, чтобы серверу не приходилось каждый раз обращаться к базе данных.
RabbitMQ — «почтовый ящик»: ставит задачи в очередь, чтобы сервер обработал их позже, когда будет готов. Полезно для задач вроде отправки писем.
PostgreSQL, MySQL, MongoDB — базы данных (упорядоченные хранилища информации).
Docker, Kubernetes — упаковка и запуск приложений в изолированных «контейнерах».
Git — система контроля версий, позволяет хранить историю изменений кода.
Linux — операционная система, на которой работает большинство серверов. Умение работать в командной строке Linux — обязательный навык.
Что взаимозаменяемо, а что путать нельзя
Бэкендер на разных языках — это по сути разные специалисты. Опыт между языками почти не переносится: Python-разработчик ≠ Java-разработчик ≠ Node.js-разработчик.
А вот инструменты (Redis, RabbitMQ, Docker, Git) взаимозаменяемы между языками — их знает любой опытный бэкендер, независимо от языка.
Уровни: junior / middle / senior
Уровень (его ещё называют грейд, от англ. grade) — это не столько годы, сколько самостоятельность.
Junior (джуниор, «джун») — делает простые задачи под присмотром старших, нужен контроль.
Middle (мидл) — берёт задачу целиком и доводит до конца сам. Основная рабочая сила команды.
Senior (сеньор) — решает, как устроить проект, выбирает технологии и помогает младшим.
Это общий ориентир. В разных компаниях требования отличаются, поэтому всегда сверяйтесь с текстом конкретной вакансии.
Как узнать роль в резюме
В резюме обычно есть раздел «стек» или «навыки» — это список технологий, которыми человек владеет. Ищите там название языка (Python, Java, Node.js и т.д.) рядом с фреймворком (Django, Spring Boot, Laravel и т.д.). Хорошие признаки — упоминание базы данных, Redis, Docker, Linux. Если в стеке только HTML и CSS — это, скорее всего, фронтенд-разработчик или верстальщик.
Что спросить на первичном скрининге
На каком языке программирования вы пишете бэкенд?
Нормальный ответ: «Python, три года на Django» или «Java, два года на Spring Boot». Насторожить должно, если человек называет одновременно три-четыре разных языка — бэкендеры редко работают на нескольких.
Работали с базами данных и Redis?
Нормальный ответ: «Работал с PostgreSQL, Redis использовал для кэширования». Redis — это «быстрый склад» для данных, с ним сталкивается любой опытный бэкендер.
Знакомы с Docker или Linux?
Нормальный ответ: человек может кратко объяснить, зачем это нужно. Docker — упаковка, Linux — среда работы сервера. Для мидла и выше это ожидаемо.
Расскажите про последний проект и вашу роль в нём.
Нормальный ответ: человек понятно говорит, что делал именно он — «отвечал за авторизацию и API оплаты», а не размыто «участвовал в разработке».
Это общий ориентир. В разных компаниях требования отличаются, поэтому всегда сверяйтесь с текстом конкретной вакансии.
Частые путаницы и красные флаги
Backend ≠ Frontend ≠ Fullstack. Бэкенд — «за стеной», фронтенд — «торговый зал», фуллстак — и то, и другое сразу.
Python-разработчик ≠ Java-разработчик ≠ Node.js-разработчик. Это разные специалисты с разными инструментами.
Backend ≠ Fullstack. Фуллстак — это и бэкенд, и фронтенд. Бэкендер фронтендом обычно не занимается.
1С-Битрикс ≠ Битрикс24. Первый — фреймворк для создания сайтов, второй — CRM-система для управления бизнесом.
Красный флаг: «Python, Java, Node.js и Go на уровне senior» — так не бывает, бэкендеры специализируются на одном языке.