
Senior Java разработчик (AppSec.Hub)
Swordfish Security
Москва
🏢 Офис
Senior
Полная занятость
Россия
Описание вакансии
Ищем инженера, который понимает платформу на уровне JVM, а не только аннотации фреймворка.
AppSec.Hub — enterprise-платформа класса ASPM/ASOC: оркестрация сканеров безопасности (SAST/DAST/SCA и др.), дедупликация и приоритизация уязвимостей по всему конвейеру разработки. Продукт компании Appsec Solutions.
Чем предстоит заниматься
•Проектировать и разрабатывать микросервисы ядра на 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) — это часть нашего ежедневного процесса.
Наш стек и архитектура
Event-driven микросервисы с упором на производительность и
предсказуемость под нагрузкой
•Ядро: Java 17 + Micronaut (без Spring), встроенный Netty. Лёгкий фреймворк и точечные библиотеки, прямой контроль над потоками, I/O и памятью.
•Обмен: асинхронный, через брокер (LavinMQ / AMQP) — async-first, database-per-service, eventual consistency.
•Данные: PostgreSQL (MyBatis), ClickHouse, Redis.
•Контракты: Protocol Buffers (сообщения) + OpenAPI 3.1 (REST).
•Эксплуатация: Docker / Kubernetes.
Требования
Платформа Java
•Java 17 на уровне платформы; Micronaut 4.x (без навязанной
зависимости от Spring);
•I/O: io / nio / nio2; понимание встроенного HTTP-сервера (Netty);
•Stream API;
•Многопоточность и concurrency, понимание JMM;
•Понимание JIT и GC, умение диагностировать и оптимизировать;
•GraalVM / native-image.
Данные
•Уверенная работа с реляционными БД и понимание, как они устроены изнутри: транзакции и изоляция, индексы, планировщик, пул соединений. Основная PostgreSQL (MySQL / другая реляционка — без разницы, важна модель);
•MyBatis (поверх JDBC) и миграции (Liquibase);
•ClickHouse (аналитика / eventstore);
•Redis (кэш, read-модели CQRS).
Распределенные системы
•AMQP: LavinMQ / RabbitMQ — продюсеры/консьюмеры, exchange-типы (direct/topic/fanout);
•Паттерны надёжности: идемпотентность, at-least-once, ретраи, eventual consistency, backpressure;
•Protocol Buffers (proto3) как сериализация сообщений (не gRPC-
RPC);
•HTTP/1.1 и HTTP/2.
Инфраструктура
•Docker, Kubernetes;
•Observability: метрики, логи, распределённый трейсинг;
•Vibecoding: промпт-инжиниринг подClaude, использование skills и subagents.
Обязательное условия отбора: принесите живой, непримитивный проект на Java — будем разбирать его вместе.
Что мы предлагаем
•Конкурентоспособный уровень вознаграждения (обсуждается с успешным кандидатом);
•Работа в сильной динамичной команде;
•Удаленка (на территории РФ), гибрид или офис - на ваш вкус;
•ДМС со стоматологией после успешного прохождения испытательного срока.
