Требования к должности:
* Опыт коммерческой разработки на Java от 3+ лет;
* Уверенное знание Java Core, многопоточности, работы JVM, управления памятью и производительности;
* Глубокое понимание Spring Framework / Spring Boot / Spring Security;
* Опыт разработки микросервисной архитектуры и распределённых систем;
* Опыт проектирования и разработки REST API и интеграционных сервисов;
* Практический опыт работы с Kafka / RabbitMQ и понимание event-driven архитектуры;
* Понимание принципов асинхронных взаимодействий, eventual consistency, idempotency, retry и DLQ;
* Опыт работы с реляционными БД (PostgreSQL) и понимание транзакций, индексов, оптимизации запросов;
* Опыт работы с NoSQL решениями (Redis, Elasticsearch или аналогами);
* Опыт работы с Docker, Kubernetes;
* Опыт работы с Git, системами управления задачами (JIRA);
* Умение писать читаемый, поддерживаемый и тестируемый код (JUnit, Testcontainers, Integration tests);
Функциональные обязанности и задачи:
* Разработка и развитие backend-сервисов на Java / Spring Boot;
* Проектирование архитектуры микросервисов, API и интеграционных решений;
* Реализация REST API, event-driven взаимодействий и асинхронных процессов;
* Работа с Kafka / RabbitMQ, проектирование событий и потоков сообщений;
* Проектирование устойчивых систем: обработка ошибок, retry, DLQ, идемпотентность;
* Участие в разработке распределённых процессов (Saga orchestration / choreography);
* Обеспечение производительности, масштабируемости и отказоустойчивости сервисов;
* Оптимизация работы взаимодействия сервисов;
* Написание unit, integration тестов;
* Участие в code review
