SeniorFlexible
Java Developer
О роли
Описание вакансии
О компании
Обязанности
- Проектировать и разрабатывать микросервисы ядра на Java 17 / Micronaut (без Spring)
- Работать с event-driven-обменом: межсервисная связь через брокер сообщений, async-first, database-per-service, eventual consistency
- Решать задачи высоконагруженной обработки: многопоточность, неблокирующий I/O, оптимизация под GC и JIT
- Работать с данными: PostgreSQL (через MyBatis), аналитика на ClickHouse, кэш и read-модели на Redis
- Закрывать observability (метрики/логи/трейсинг)
- Активно использовать AI-ассистированную разработку (Claude)
Требования
- Java 17 на уровне платформы; Micronaut 4.x
- I/O: io / nio / nio2; понимание встроенного HTTP-сервера (Netty)
- Stream API
- Многопоточность и concurrency, понимание JMM
- Понимание JIT и GC, умение диагностировать и оптимизировать
- GraalVM / native-image
- Уверенная работа с реляционными БД: транзакции и изоляция, индексы, планировщик, пул соединений
- MyBatis (поверх JDBC) и миграции (Liquibase)
- ClickHouse (аналитика / eventstore)
- Redis (кэш, read-модели CQRS)
- AMQP: LavinMQ / RabbitMQ — продюсеры/консьюмеры, exchange-типы
- Паттерны надёжности: идемпотентность, at-least-once, ретраи, eventual consistency, backpressure
- Protocol Buffers (proto3) как сериализация сообщений
- HTTP/1.1 и HTTP/2
- Docker, Kubernetes
- Observability: метрики, логи, распределённый трейсинг
- Vibecoding: промпт-инжиниринг под Claude, использование skills и subagents
- Обязательное условие отбора: живой, непримитивный проект на Java
Условия
- Формат работы: удалённо или гибрид или офис
- Полная занятость, график 5/2
Стек и навыки
С чем работаем