-
Phase 1. Language basics: Java · 16 questions
Синтаксис и типы, ООП, коллекции, дженерики, исключения, лямбды и Stream API, современный Java, инструменты — фундамент языка до фреймворков.
-
Phase 2. Foundation: Spring core · 16 questions
DI/IoC, жизненный цикл бина, Boot, MVC, Data JPA, транзакции, события, AOP, планировщик.
-
Phase 3. Multithreading and concurrency · 13 questions
Потоки и модель памяти Java (JMM, happens-before, volatile), гонки, synchronized и явные блокировки, atomics и CAS, потокобезопасные коллекции, пулы потоков, CompletableFuture, виртуальные потоки Java 21 и типичные баги — deadlock, livelock, starvation.
-
Phase 4. PostgreSQL: model and queries · 13 questions
Транзакции и изоляция, блокировки, типы данных, индексы и EXPLAIN.
-
Phase 5. PostgreSQL: operations and scale · 11 questions
Миграции, пул, vacuum/WAL, репликация, бэкап, партиционирование, FTS и гео.
-
Phase 6. Hibernate and ORM · 14 questions
Объектно-реляционное отображение: маппинг сущностей и связей, persistence context, ленивая загрузка и N+1, JPQL и Criteria, кэширование, транзакции и блокировки, наследование и типичные грабли.
-
Phase 7. Other stores: documents, search, files, analytics · 13 questions
MongoDB, Elasticsearch, object storage (S3) и ClickHouse.
- ACID и согласованность
- Моделирование документов
- Репликация и шардинг
- Fundamentals
- Query DSL и relevance
- Spring Data Elasticsearch
- Operations
- Fundamentals
- Spring + AWS SDK
- Operations
- Что такое Redis
- Структуры данных
- Паттерны кэширования
- Redis за пределами кэша
- Redis в Spring Boot
- Эксплуатация
- ClickHouse Fundamentals
- Моделирование и запросы
- Интеграция из Java/Spring
- Эксплуатация
-
Phase 8. Design principles and patterns · 9 questions
SOLID, GRASP, паттерны GoF, DRY/KISS/YAGNI.
-
Phase 9. API: REST and contracts · 11 questions
URL и ресурсы, query-параметры, ответы и ошибки, версионирование, OpenAPI.
- URL и ресурсы
- Query-параметры и пагинация
- JSON и формат ответов
- Ошибки RFC 9457
- Заголовки и трассировка
- Версионирование
- Alias и Action-эндпоинты
- API-first подход
- OpenAPI и антипаттерны
- Rate limiting, файлы, deprecation
- Batch, async, локализация
- Где валидировать
- Bean Validation
- Свои ограничения
- Модель ошибок
- Глобальный обработчик
- Типичные ошибки
-
Phase 10. Security and authorization · 11 questions
Spring Security, Keycloak/OAuth2/OIDC и паттерны авторизации.
-
Phase 11. Brokers and distributed systems · 13 questions
AMQP/RabbitMQ, Kafka и распределённые паттерны: saga, outbox, idempotency.
-
Phase 12. Containers: Docker · 11 questions
Контейнеры и образы, Dockerfile для Spring Boot, multi-stage сборка, запуск контейнеров, тома и данные, сети, Docker Compose, JVM в контейнере, безопасные образы и реестры.
-
Phase 13. Kubernetes and graceful shutdown · 13 questions
Кластер, сеть, Spring Boot в k8s, деплой и корректное завершение работы.
-
Phase 14. Cloud: AWS · 11 questions
Сеть, IAM, compute, масштабирование, serverless, данные, IaC и well-architected.
- Основы AWS
- Сеть: VPC и подсети
- IAM в AWS
- Где запускать сервис
- Масштабирование и доступность
- Serverless и Lambda
- Управляемые данные
- DynamoDB
- Интеграция Spring Boot
- Безопасность и наблюдаемость
- Отказоустойчивость и DR
- Оптимизация затрат
- Well-Architected Framework
- Основы IaC
- Terraform
- CloudFormation
- AWS CDK
- State и доставка
-
Phase 15. CI/CD: the delivery pipeline · 9 questions
Принципы конвейера, CI для Java, стратегии релиза и ветвление.
-
Phase 16. Quality: testing and observability · 11 questions
Стратегия тестов и observability/Actuator.
-
Phase 17. System design and architectural choices · 11 questions
Метод дизайна, строительные блоки, развилки хранилищ и нотаций, C4.
-
Phase 18. Domain-Driven Design · 10 questions
Стратегические и тактические паттерны, агрегаты, доменные события.
-
Phase 19. Service architecture patterns · 11 questions
Структура сервиса и микросервисов, Onion и Hexagonal, CQRS, отказоустойчивость и пакетная обработка.
- Луковая архитектура
- CQRS
- Когда CQRS оправдан
- Command side
- Query side
- Read-model
- Sync через события
- Уровень и эволюция
- Гексагональная архитектура
- Когда переходить
- Core слой
- Ports
- Adapters in
- Adapters out
- Структура модулей
- Bootstrap
- Архитектурные тесты
- Структурные паттерны
- Отказоустойчивость
- Пакетная обработка
-
Phase 20. Use Case Pattern: methodology and maturity
Зачем нужна, как применять, шаблон спеки и четыре уровня зрелости.
-
Phase 21. End-to-end case study
Всё вместе на маркетплейсе — от бизнес-брифа до спеки.
Программа обучения
Программа: что нужно знать, чтобы работать с UCP
Этот сайт устроен как программа подготовки. Каждая статья — кусочек знаний, необходимый, чтобы работать в команде, использующей Use Case Pattern. Программа ведёт от фундамента Spring через данные, принципы и паттерны, поиск и хранилища, инфраструктуру и качество к архитектурному мышлению — системному дизайну и DDD — и к кульминации в Use Case Pattern, а затем к сквозному кейсу маркетплейса.
Всего в программе 227 вопросов для самопроверки.