Обязанности и достижения:
- Разработала Kafka-адаптер: consumer с ручным контролем polling/commit (offset коммитится только после успешной обработки), добавила ретраи с backoff и DLQ.
- Создала сервис рассылок (уведомлений) + прототипы: Simple Java Mail и свой минималистичный SMTP-клиент на Java 21 (MIME, вложения, TLS) — без Jakarta Mail, чтобы не зависеть от внешних библиотек.
- Учавствовала в CI/CD: написание пайплайнов, контейнеризация приложений (Docker, K8s), автоматизация сборки и деплоя.
- Настроила аутентификацию и авторизацию через Keycloak (SSO): создала клиентов и роли, подключила фронт и внутренние сервисы.
- Покрыла ключевой функционал сервисов автотестами: интеграционные тесты на Testcontainers (Kafka, MailHog), параметризованные и property-based тесты; покрывала как успешные сценарии, так и ошибки сериализации, валидации, ретраев и DLQ.
- Проводила код‑ревью, внедрение best practices (clean code, тестируемость, архитектурные паттерны).
- Учавствовала в разработке архитектуры сервиса уведомлений.
- Работала с Git (GitLab, Bitbucket), ведение задач и багов в Jira, планирование и декомпозиция задач по Agile.
Стек:
Язык: Java 17–21
Фреймворки: Spring (Spring Boot), Micronaut
Базы данных: PostgreSQL, ArangoDB
Сообщения и стриминг: Apache Kafka
DevOps и CI/CD: Jenkins, Docker, Kubernetes
Процессы и оркестрация: Camunda (BPMN)
API: REST, GraphQL