Чем предстоит заниматься:
- Полный цикл разработки backend-сервисов: от анализа требований и технического дизайна до вывода в продакшен и сопровождения;
- Проектирование архитектуры новых сервисов и доработка существующих: выбор паттернов интеграции, границ сервисов, моделей данных;
- Разработка интеграций с внешними и legacy-системами по REST, SOAP и через Kafka;
- Подготовка технических решений (design docs, ADR) и их защита перед командой и архитектором;
- Проектирование контрактов API и событий, согласование их со смежными командами.
Что ожидаем от кандидата:
- Опыт коммерческой разработки на Java от 5 лет, уверенное знание Java 17+ (records, sealed classes, pattern matching, Stream API, многопоточность, java.util.concurrent, JVM и GC на уровне диагностики проблем). Опыт с Java 21 (virtual threads) приветствуется;
- Глубокое знание Spring Boot 3 и экосистемы Spring: Spring Web, Spring Data JPA, Spring Security, Spring Cloud;
- Практический опыт проектирования и разработки микросервисной архитектуры: декомпозиция, межсервисное взаимодействие, отказоустойчивость (retry, circuit breaker, idempotency, graceful degradation), service discovery, API Gateway;
- Опыт с распределёнными транзакциями (Saga, Transactional Outbox), DDD и event-driven архитектурой;
- Опыт миграции с legacy-систем и декомпозиции монолита: Strangler Fig, анти-коррупционный слой, поэтапный перенос функциональности без остановки системы;
- Проектирование и реализация REST API: версионирование, обработка ошибок, документирование (OpenAPI/Swagger), contract-first подход;
- Разработка и интеграция SOAP-сервисов: WSDL/XSD, Spring WS или JAX-WS, генерация клиентов, работа с XML (JAXB), WS-Security;
- Уверенная работа с Apache Kafka: проектирование топиков и партиционирования, гарантии доставки, consumer groups, обработка повторов, дублей и DLQ, схемы сообщений (Avro/JSON Schema, Schema Registry);
- Уверенная работа с PostgreSQL: проектирование схемы, индексы, анализ планов запросов (EXPLAIN), транзакции и уровни изоляции, блокировки, миграции (Liquibase/Flyway);
- Распределённое кэширование и координация: Redis или Hazelcast, стратегии инвалидации кэша, распределённые блокировки, планировщики задач в кластере (ShedLock, Quartz);
- Безопасность приложений: Spring Security, OAuth2 / OpenID Connect, JWT, Keycloak или аналогичный Identity Provider, mTLS между сервисами, понимание OWASP Top 10;
- Опыт работы с высоконагруженными системами или большими объёмами данных;
- Observability: Prometheus, Grafana, ELK/OpenSearch, распределённая трассировка (OpenTelemetry);
- Docker, Kubernetes, опыт работы с CI/CD (GitLab CI, Jenkins, GitHub Actions);
- Культура тестирования: unit- и интеграционные тесты (JUnit 5, Mockito, Testcontainers), контрактное тестирование;
- Python для автоматизации тестирования или вспомогательных задач;
- Опыт code review и менторства младших разработчиков.
Что мы предлагаем:
- Работа в стабильной IT-компании, аккредитованной Минцифрой РФ;
- График работы 5/2 с 9:00-18:00;
- Корпоративный ДМС после прохождения испытательного срока;
- Трудоустройство по ТК РФ c первого дня, официальная заработная плата.