Должностные обязанности
Разработка backend части программного обеспечения на базе технологий Java 17+ и фреймворк Spring (Spring Boot 3.*);
Межсервисная интеграция через Kafka, ActiveMQ Artemis;
Интеграции с внешними сервисами по REST;
Написание REST API c различными настройками авторизации Spring Security (Basic, Bearer and OAuth2);
Сопровождение своего кода от коммита до мониторинга работы сервиса в производственной среде;
Участие в code-review, ведение технической документации, формализация архитектурных решений (ADR)Участие в проектировании и принятии архитектурных решений;
Написание Unit тестов (Junit4/5);
Первичное тестирование написанного кода;
Требования к кандидату
Опыт разработки на Java от 5 лет;
Опыт в реактивном стеке (WebFlux, Reactor)
Знание JVM-интернов, профилирования, отладки, сборщиков мусора.
Уверенные знания и опыт работы с БД «PostgreSQL»: понимание принципов построения табличного пространства, написание хранимых процедур и функций;
Понимание принципов нормализации, транзакционности (ACID), изоляций, индексов, планов выполнения запросов.
Опыт работы с Flyway / Liquibase для управления схемой БД.
Опыт проектирования многомодульных приложений и масштабируемых решений;
Опыт разработки high-load систем на основе микро сервисной архитектуры;
Следование SOLID, DRY, KISS, YAGNI, знание GoF-паттернов.
Понимание многопоточности и синхронизации;
Опыт работы с Git, CI/CD, Maven, Docker, Kubernetes;
Опыт реализации юнит-тестов;
Свободное владение русским языком;
Будет плюсом
Знание SOAP протоколов;
Опыт работы с шинами данных (Entaxy);
Опыт работы с BPMN процессами (Camunda);
Знание Virtual Threads in Java 21;
Владение английским языком;