Роли · Backend Developer (Scala) · Junior

Что должен уметь Junior }

26 ключевых навыков, всего 67. Ожидания по каждому навыку и что меняется на следующем уровне.

На этой странице — что ожидается от Junior }, навык за навыком. Ключевые навыки оценивают руководитель и коллеги в цикле ревью; остальные учитываются только в самооценке. Основные области: Основы программирования, Backend Development, Базы данных.

26ключевых навыков
41дополнительных навыков
4областей
0%на уровне Продвинутый или Эксперт
Оценить себя как Junior Полная матрица роли

Ключевые навыки для Junior

Сгруппированы по областям. Метка справа — ожидаемая глубина: Осведомлённость, Применение, Продвинутый или Эксперт.

Основы программирования · 12

Алгоритмы и сложность Осведомлённость

Понимает основы Алгоритмы и сложность на базовом уровне. Применяет простые концепции в рабочих задачах с использованием Scala 3. Следует рекомендациям senior-разработчиков при решении задач.

Понимает основы Асинхронное программирование на базовом уровне. Применяет простые концепции в рабочих задачах с использованием Scala 3. Следует рекомендациям senior-разработчиков при решении задач.

Понимает основы Дженерики и параметрический полиморфизм на базовом уровне. Применяет простые концепции в рабочих задачах с использованием Scala 3. Следует рекомендациям senior-разработчиков при решении задач.

Понимает базовые принципы иммутабельности в Scala — val vs var, иммутабельные коллекции из scala.collection.immutable и преимущества case class. Следует конвенциям команды по использованию иммутабельных структур данных и избегает мутабельного состояния в бизнес-логике. Осознаёт, как иммутабельность обеспечивает более безопасное конкурентное программирование и упрощает рассуждение о поведении кода.

Понимает основы Качество кода и рефакторинг на базовом уровне. Применяет простые концепции в рабочих задачах с использованием Scala 3. Следует рекомендациям senior-разработчиков при решении задач.

Понимает основы Многопоточное программирование на базовом уровне. Применяет простые концепции в рабочих задачах с использованием Scala 3. Следует рекомендациям senior-разработчиков при решении задач.

Монады и функторы Осведомлённость

Понимает основы Монады и функторы на базовом уровне. Применяет простые концепции в рабочих задачах с использованием Scala 3. Следует рекомендациям senior-разработчиков при решении задач.

Понимает основы Основы функционального программирования на базовом уровне. Применяет простые концепции в рабочих задачах с использованием Scala 3. Следует рекомендациям senior-разработчиков при решении задач.

Паттерны проектирования Осведомлённость

Понимает основы Паттерны проектирования на базовом уровне. Применяет простые концепции в рабочих задачах с использованием Scala 3. Следует рекомендациям senior-разработчиков при решении задач.

Принципы ООП и SOLID Осведомлённость

Понимает основы Принципы ООП и SOLID на базовом уровне. Применяет простые концепции в рабочих задачах с использованием Scala 3. Следует рекомендациям senior-разработчиков при решении задач.

Структуры данных Осведомлённость

Понимает основы Структуры данных на базовом уровне. Применяет простые концепции в рабочих задачах с использованием Scala 3. Следует рекомендациям senior-разработчиков при решении задач.

Понимает основы Типобезопасность и системы типов на базовом уровне. Применяет простые концепции в рабочих задачах с использованием Scala 3. Следует рекомендациям senior-разработчиков при решении задач.

Backend Development · 4

Стратегии кэширования Осведомлённость

Использует Стратегии кэширования на базовом уровне в Play/http4s. Выполняет простые задачи по готовым шаблонам. Понимает базовые концепции и следует принятым в команде практикам.

Apache Kafka Осведомлённость

Использует Apache Kafka на базовом уровне в Play/http4s. Выполняет простые задачи по готовым шаблонам. Понимает базовые концепции и следует принятым в команде практикам.

Redis Осведомлённость

Использует Redis на базовом уровне в Play/http4s. Выполняет простые задачи по готовым шаблонам. Понимает базовые концепции и следует принятым в команде практикам.

Scala Frameworks Осведомлённость

Использует Scala Frameworks на базовом уровне в Play/http4s. Выполняет простые задачи по готовым шаблонам. Понимает базовые концепции и следует принятым в команде практикам.

Базы данных · 6

Индексирование БД Осведомлённость

Понимает базовые принципы индексирования в PostgreSQL: создание B-tree индексов, чтение EXPLAIN ANALYZE для простых запросов из Scala-приложений. Знает разницу между первичным ключом и обычным индексом, умеет определить необходимость индекса по медленным запросам в логах.

Миграции БД Осведомлённость

Понимает основы миграций баз данных в Scala: интеграция Flyway/Liquibase с sbt, версионированные SQL-миграции и базовые изменения схемы с типобезопасными библиотеками Slick или Doobie. Следует командным паттернам для скриптов миграции и процедур отката.

Оптимизация запросов Осведомлённость

Выполняет базовую оптимизацию SQL-запросов в Scala-приложениях: избегает N+1 проблем в Doobie/Slick, использует JOIN вместо подзапросов. Умеет читать EXPLAIN-вывод PostgreSQL и понимает влияние отсутствующих индексов на производительность запросов.

Создаёт базовые модели данных для Scala-приложений: определяет case class-ы для доменных сущностей, маппит их на таблицы PostgreSQL через Doobie или Slick. Понимает нормализацию до 3NF, проектирует простые связи между таблицами и использует типы Scala для выражения ограничений модели.

Понимает основы транзакций баз данных и свойства ACID в Scala-приложениях. Использует базовое управление транзакциями через Slick, Doobie или JDBC. Следует командным соглашениям по границам транзакций, корректному освобождению ресурсов и обработке конкурентного доступа с подходящими уровнями изоляции.

PostgreSQL Осведомлённость

Выполняет базовые SQL-запросы к PostgreSQL из Scala-приложений через Doobie или Slick: SELECT, INSERT, UPDATE с параметризованными запросами. Понимает типы данных PostgreSQL, работает с миграциями через Flyway и умеет читать планы выполнения простых запросов.

API и интеграции · 4

Документирование API Осведомлённость

Документирует Scala API-эндпоинты с помощью Swagger/OpenAPI аннотаций: описывает request/response модели, примеры запросов. Пишет Scaladoc-комментарии для публичных методов, поддерживает актуальность README с инструкциями по запуску сервиса и доступным эндпоинтам.

Изучает стратегии версионирования API, включая URI-версионирование и согласование контента в Scala-сервисах. Следует установленным паттернам управления версиями в эндпоинтах Akka HTTP или Play Framework.

gRPC и Protocol Buffers Осведомлённость

Использует существующие gRPC-сервисы из Scala-кода через ScalaPB: вызывает unary RPC-методы, понимает структуру .proto файлов. Умеет генерировать Scala-классы из Protobuf-определений через sbt-плагин, работает с базовыми типами сообщений и enum-ами.

REST API Design Осведомлённость

Реализует простые REST-эндпоинты в Scala через Play Framework или Akka HTTP: CRUD-операции с JSON-сериализацией через Circe, базовая валидация входных данных. Понимает HTTP-методы, коды ответов и структуру RESTful URL, следует существующим паттернам в кодовой базе проекта.

Дополнительные навыки

Команда их не оценивает, но они входят в самооценку и план развития.

Интеграционное тестированиеОсновы сетейОсновы System DesignПаттерны Message BrokersПрактики безопасного кодаПроектирование WebSocket APIСтруктурированное логированиеУправление памятьюШардирование БДAWSChatGPT / ClaudeCode ReviewConnection PoolingCPU ProfilingCQRSCursor IDEDockerE2E тестированиеELK StackEvent-Driven ArchitectureGit AdvancedGitHub Actions / GitLab CIGitHub CopilotGraphQL DesigngRPC и Protocol BuffersHighload архитектураJWT / OAuth2 / OIDCKubernetes CoreLatency OptimizationOpenTelemetryOWASP и безопасность приложенийPrometheus и GrafanaPrompt Engineering для кодаProperty-Based TestingPython Web FrameworksRate Limiting и ThrottlingSLI / SLO / SLAStream ProcessingTDD и BDDTerraformUnit-тестирование

Что меняется на Middle

67 навыков получают более высокое ожидание или становятся ключевыми при переходе с Junior на Middle. Сначала самые большие скачки.

Страница Middle →
Прогоните это со всей командой
Самооценка плюс оценка руководителя и коллег по одной матрице, зоны роста и готовность к следующему уровню для каждого инженера. Team Pro бесплатно 14 дней; личные инструменты бесплатны всегда.
Попробовать с командой (14 дней бесплатно) Отправить тимлиду

} в открытой матрице компетенций: 67 навыков на 5 уровнях. Матрица бесплатна для специалистов и останется бесплатной.