Понимает основы Алгоритмы и сложность на базовом уровне. Применяет простые концепции в рабочих задачах с использованием Node.js 20+/TypeScript. Следует рекомендациям senior-разработчиков при решении задач.
Роли · Backend Developer (Node.js) · Junior
Что должен уметь Junior }
27 ключевых навыков, всего 69. Ожидания по каждому навыку и что меняется на следующем уровне.
На этой странице — что ожидается от Junior }, навык за навыком. Ключевые навыки оценивают руководитель и коллеги в цикле ревью; остальные учитываются только в самооценке. Основные области: Основы программирования, Backend Development, Базы данных.
Ключевые навыки для Junior
Сгруппированы по областям. Метка справа — ожидаемая глубина: Осведомлённость, Применение, Продвинутый или Эксперт.
Основы программирования · 8
Понимает основы Асинхронное программирование на базовом уровне. Применяет простые концепции в рабочих задачах с использованием Node.js 20+/TypeScript. Следует рекомендациям senior-разработчиков при решении задач.
Понимает основы Качество кода и рефакторинг на базовом уровне. Применяет простые концепции в рабочих задачах с использованием Node.js 20+/TypeScript. Следует рекомендациям senior-разработчиков при решении задач.
Понимает основы Основы функционального программирования на базовом уровне. Применяет простые концепции в рабочих задачах с использованием Node.js 20+/TypeScript. Следует рекомендациям senior-разработчиков при решении задач.
Понимает основы Паттерны проектирования на базовом уровне. Применяет простые концепции в рабочих задачах с использованием Node.js 20+/TypeScript. Следует рекомендациям senior-разработчиков при решении задач.
Понимает основы Принципы ООП и SOLID на базовом уровне. Применяет простые концепции в рабочих задачах с использованием Node.js 20+/TypeScript. Следует рекомендациям senior-разработчиков при решении задач.
Понимает основы Структуры данных на базовом уровне. Применяет простые концепции в рабочих задачах с использованием Node.js 20+/TypeScript. Следует рекомендациям senior-разработчиков при решении задач.
Понимает основы Типобезопасность и системы типов на базовом уровне. Применяет простые концепции в рабочих задачах с использованием Node.js 20+/TypeScript. Следует рекомендациям senior-разработчиков при решении задач.
Backend Development · 6
Использует кэширование в Node.js на базовом уровне: in-memory кэширование с node-cache, интеграция Redis-клиента. Следует командным паттернам для cache-aside в middleware Express/Fastify. Понимает базовую настройку TTL и стратегии ключей кэша.
Понимает основы Kafka для Node.js-сервисов: настройка клиента KafkaJS, базовые паттерны producer/consumer и асинхронная обработка сообщений с учётом event loop Node.js. Следует командным практикам управления топиками и обработки ошибок в event-driven Node.js приложениях.
Использует Node.js Frameworks на базовом уровне. Выполняет простые задачи по готовым шаблонам. Понимает базовые концепции и следует принятым в команде практикам.
Использует RabbitMQ с amqplib/amqp-connection-manager в Node.js на базовом уровне. Публикует и потребляет простые сообщения по командным шаблонам. Понимает базовые AMQP-концепции: exchanges, очереди и bindings.
Использует Redis на базовом уровне. Выполняет простые задачи по готовым шаблонам. Понимает базовые концепции и следует принятым в команде практикам.
Использует Task Queues на базовом уровне. Выполняет простые задачи по готовым шаблонам. Понимает базовые концепции и следует принятым в команде практикам.
Базы данных · 6
Создаёт индексы через Prisma/Knex миграции: @@index для composite, @@unique для constraints. Понимает B-tree индексы. Проверяет EXPLAIN для query optimization.
Пишет миграции через Prisma Migrate / Knex migrations: создание таблиц, колонок, индексов. Понимает идемпотентность. Тестирует на dev-среде.
Понимает N+1 проблему и решает через Prisma include/select, Knex eager loading. Использует findMany вместо циклов findUnique. Анализирует generated SQL через logging.
Проектирует модели через Prisma schema: модели, связи (1:1, 1:N, M:N), enums. Понимает нормализацию. Использует Prisma relations для type-safe data access.
Понимает документную модель MongoDB и базовые CRUD-операции через Mongoose или нативный драйвер. Пишет простые запросы и следует командным соглашениям по дизайну схем. Применяет базовые принципы индексирования и понимает разницу между вложением и ссылками на документы.
Работает с PostgreSQL через Prisma/Knex: CRUD-запросы, relations, migrations. Понимает типы PostgreSQL (JSONB, arrays, UUID). Использует Prisma Studio для инспекции данных.
API и интеграции · 6
Документирует API: описывает endpoints через JSDoc/swagger-jsdoc, пишет request/response examples. Поддерживает Swagger UI актуальным. Описывает authentication requirements.
Реализует WebSocket через Socket.IO/ws: подключение клиентов, rooms для группировки, события. Понимает lifecycle: connect, disconnect, reconnection. Обрабатывает ошибки соединения.
Изучает подходы к версионированию API — через URL-путь и заголовки — в Node.js-сервисах. Следует командным соглашениям по поддержке обратной совместимости в маршрутах Express или Fastify.
Тестирует API через Postman/Insomnia: отправляет запросы, проверяет ответы. Пишет базовые тесты в Postman Collections. Понимает environments и variables.
Создаёт GraphQL API через Apollo Server/Mercurius: type definitions, resolvers, queries и mutations. Понимает schema-first vs code-first. Тестирует через GraphQL Playground.
Создаёт REST API на Express/Fastify: CRUD endpoints, middleware для auth, error handling. Понимает HTTP-методы, статус-коды, content negotiation. Валидирует input через Zod/Joi.
Облако и инфраструктура · 1
Понимает сети для Node.js: TCP/HTTP, DNS resolution, порты и binding. Настраивает CORS, proxy headers (X-Forwarded-For). Дебажит connection issues.
Дополнительные навыки
Команда их не оценивает, но они входят в самооценку и план развития.
Что меняется на Middle
69 навыков получают более высокое ожидание или становятся ключевыми при переходе с Junior на Middle. Сначала самые большие скачки.
- Паттерны Message Brokers: Осведомлённость → Применение · становится ключевым
- Шардирование БД: Осведомлённость → Применение · становится ключевым
- Connection Pooling: Осведомлённость → Применение · становится ключевым
- CQRS: Осведомлённость → Применение · становится ключевым
- gRPC и Protocol Buffers: Осведомлённость → Применение · становится ключевым
- Rate Limiting и Throttling: Осведомлённость → Применение · становится ключевым
- Алгоритмы и сложность: Осведомлённость → Применение
- Асинхронное программирование: Осведомлённость → Применение
- Документирование API: Осведомлённость → Применение
- Индексирование БД: Осведомлённость → Применение
} в открытой матрице компетенций: 69 навыков на 5 уровнях. Матрица бесплатна для специалистов и останется бесплатной.