Разработка: Написание нового функционала и поддержка микросервисов на Spring Boot / Spring Cloud.
REST API: Проектирование и реализация REST API, интеграция со сторонними сервисами.
Базы данных: Проектирование таблиц, написание и оптимизация SQL-запросов в PostgreSQL, работа через JPA/Hibernate.
Безопасность: Настройка авторизации и аутентификации (JWT, OAuth2).
Контейнеризация: Локальный запуск, сборка и отладка сервисов с помощью Docker и Docker Compose.
Качество и командная работа: Покрытие кода тестами (JUnit/Mockito), участие в Code Review и обсуждении задач.
Требования:
Java & Spring Framework Java Core: Уверенное владение Java (Коллекции, Multithreading, Stream API). Spring: Опыт коммерческой разработки с использованием Spring Boot, Spring MVC, Spring Data JPA, Spring Security. Понимание базовых принципов микросервисной архитектуры.
Базы данных и ORM PostgreSQL: Умение писать рабочие и оптимизированные SQL-запросы, понимание индексов и связей между таблицами. ORM: Понимание принципов работы JPA / Hibernate на базовом/среднем уровне (маппинг сущностей, понимание базовых проблем производительности вроде N+1).
API & Security Опыт создания REST API. Понимание работы и опыт применения JWT, OAuth2, OIDC для защиты API.
Инструменты и окружение Linux & Docker: Базовые навыки работы в Linux (терминал, логи) и практический опыт с Docker / Docker Compose. Тестирование: Написание базовых unit- и интеграционных тестов (JUnit, Mockito). Git: Уверенная работа с Git (ветки, Merge/Pull Request).
Будет плюсом:
Опыт работы с Redis (кэширование) и брокерами сообщений (RabbitMQ). Опыт работы с Nginx (базовая настройка Reverse Proxy).
Знание SIP-протокола или опыт работы/интеграции с Asterisk (или другими IP-АТС).