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 — будем разбирать его вместе.

Что мы предлагаем
Конкурентоспособный уровень вознаграждения (обсуждается с успешным кандидатом);
Работа в сильной динамичной команде;
Удаленка (на территории РФ), гибрид или офис - на ваш вкус;
ДМС со стоматологией после успешного прохождения испытательного срока.
AI-помощник
Источникhh.ru
Опубликовано8 июл.
Просмотры0
Если при отклике просят перевести деньги, назвать код из SMS, войти через чужой аккаунт или установить непонятное приложение — это признаки мошенничества. Не соглашайся и напиши нам через чат с основателем или форму обратной связи.