С чем предстоит работать:
Языки и фреймворки
- Java — уверенное владение версиями 17-23, понимание современных возможностей языка (Records, Pattern Matching, Virtual Threads и др.) ;
- Spring Boot — опыт разработки микро сервисных приложений;
- Spring Cloud — работа с распределенными системами (Config Server, Service Discovery, Circuit Breaker и т.д.).
Архитектурные паттерны и принципы
- Event-Driven Architecture — опыт проектирования и разработки событийно-ориентированных систем;
- Microservice Patterns — знание и применение паттернов микросервисной архитектуры (API Gateway, Service Mesh, Saga, CQRS и др.);
- SOLID принципы — глубокое понимание и практическое применение принципов объектно-ориентированного проектирования.
Асинхронное программирование
- Понимание принципов асинхронного программирования;
- Опыт работы с CompletableFuture, Reactive Streams;
- Знание реактивного программирования (Project Reactor, RxJava).
Системы обмена сообщениями
- Apache Kafka — опыт работы с брокером сообщений, понимание концепций топиков, партиций, consumer groups.
Тестирование
- Unit тестирование — обязательное покрытие кода юнит-тестами (JUnit 5, Mockito, AssertJ);
- Integration тестирование — опыт написания интеграционных тестов (Spring Boot Test, Testcontainers);
- Понимание принципов TDD/BDD;
- Стремление к высокому покрытию кода тестами.
Что мы ожидаем от твоих навыков: - Опыт работы в команде, использование Git;
- Понимание CI/CD процессов;
- Знание Docker и контейнеризации;
- Умение писать чистый, поддерживаемый код;
- Навыки code review.
Желательные навыки
- Apache Pulsar — опыт работы будет преимуществом;
- Redis — опыт использования для кеширования и в качестве хранилища данных.
Что мы предлагаем:
- Комфортабельный офис в новом деловом центре Ташкента;
- График работы 5/2 с 9:00 до 18:00 в современном офисе;
- Праздничные премии;
- Корпоративная культура, основанная на поддержке и командной работе.