Rust developer

Амбрелла

Rust developer

Москва, улица Ленинская Слобода, 26

Метро: Автозаводская

Описание вакансии

Привет!
Меня зовут Эля, я являюсь HR компании «Амбрелла – Защита Информационных Систем».

Мы ищем опытного Rust-разработчика для разработки ядра потоковой обработки событий SIEM.

Сервис в реальном времени применяет правила к потоку нормализованных событий. Основные задачи связаны со stateful-обработкой при высоком EPS, предсказуемой latency (p99) и жёстком ограничении по памяти.

Разработка исключительно продуктовая — без legacy-проектов. Использование AI-инструментов приветствуется при условии полного понимания генерируемого кода и обязательного code review.

Зона ответственности:
- Разработка движка исполнения правил над потоком событий в реальном времени: окна, последовательности, таймеры, детект отсутствия событий, долгоживущие списки сущностей.
- Проектирование stateful-обработки: keyed state, TTL, вытеснение и ограничение памяти при миллионах ключей.
- Проектирование формата описания правил, их компиляции в план исполнения и горячей перезагрузки без рестарта.
- Работа с потоковым источником событий: шардирование, позиции чтения, семантика доставки, реплей и перераспределение нагрузки между узлами.
- Обеспечение корректного failover и восстановления состояния без дублирующихся и потерянных алертов.
- Оптимизация CPU, аллокаций, памяти и latency; работа с бюджетами производительности EPS, p95/p99.
- Профилирование CPU, памяти и async-задач в dev и production, диагностика contention и деградаций.
- Разработка бенчмарков и нагрузочных тестов, контроль регрессий производительности в CI.
- Разработка gRPC-интерфейсов, unit- и интеграционных тестов, проведение code review.
- Сборка и поставка статических бинарников как systemd units, graceful shutdown и обработка сигналов.
- Диагностика production-инцидентов: рост памяти, отставание от потока, деградация производительности.
- Подготовка технической документации и взаимодействие с SIEM-инженерами, системными аналитиками, DevOps и техническими писателями.

Требования:
- Отличное знание Rust (edition 2021/2024): ownership, borrowing, lifetimes, traits, generics, trait objects, Result, thiserror / anyhow.
- Глубокое понимание stateful stream processing: keyed/partitioned state, sliding/tumbling windows, таймеры, event time vs processing time, out-of-order и late events.
- Понимание структур данных для состояния: hash tables, ring buffers, очереди таймеров, TTL и управление памятью при высокой кардинальности ключей.
- Опыт работы с Kafka или аналогами: шардирование, позиции чтения, at-least-once / exactly-once, идемпотентность и replay.
- Глубокое понимание конкурентности в Rust: Send / Sync, Arc, Mutex, RwLock, parking_lot, атомарные операции, memory ordering, каналы и backpressure.
- Уверенная работа с Tokio: runtime, tasks, select!, cancellation, spawn_blocking; понимание CPU-bound и IO-bound нагрузки.
- Опыт оптимизации производительности: zero-copy, сокращение аллокаций, cache locality, false sharing, выбор hash-функций и аллокатора.
- Опыт профилирования и диагностики: perf, flame graphs, tokio-console, tracing; профилирование памяти и аллокаций.
- Опыт разработки бенчмарков с criterion и понимание методики измерения производительности.
- Уверенная работа с Linux, systemd, journalctl, Cargo, Git, clippy, rustfmt и тестированием.
- Опыт сборки production-приложений: release profiles, LTO, musl, cross-compilation, Docker, cargo audit / cargo deny.
- Опыт работы с serde, ClickHouse и Redis.
- Понимание TLS/mTLS (rustls), X509, OAuth2 / OIDC / JWT.
- Опыт работы с production-системами и разработки серверных компонентов корпоративного уровня под Linux.

Будет преимуществом:
- Опыт разработки highload / streaming-систем и сервисов 24/7 с предсказуемой latency.
- Опыт с Flink, Kafka Streams, RisingWave, Materialize, ksqlDB или другими системами потоковой обработки.
- Опыт CEP, проектирования DSL и парсеров правил (nom, pest), компиляции правил в план исполнения.
- Опыт с rhai, mlua или WASM для пользовательской логики правил.
- Опыт с tonic, prost, axum / hyper.
- Опыт с SIMD, loom, cargo-fuzz, proptest, FFI и другими low-level инструментами.
- Опыт с Prometheus, OpenTelemetry и Grafana.
- Знание правил детектирования SIEM (ArcSight, QRadar, Splunk ES), Sigma и понимание MITRE ATT&CK.
- Опыт с Tarantool, Scylla или другими системами с распределённым состоянием.
- Опыт с HyperLogLog, Count-Min Sketch, Bloom filter.
- Опыт с eBPF, io_uring, thread-per-core или другими low-level подходами.
- Опубликованные crates, контрибуции в Rust open source, публикации или доклады по Rust performance.
- Опыт C / C++ / Go / C# в системном программировании и опыт в информационной безопасности.

Обязательно:
- Ссылка на GitHub / GitLab с примерами кода: сервисы, парсеры, бенчмарки.
- Готовность к full-time работе.

Условия:
- Работа в аккредитованной IT-компании.
- Оформление по ТК РФ.
- Дружный коллектив.
- Удалённый формат работы.

Всегда рады новым талантам и новым успехам наших сотрудников!

Посмотреть контакты работодателя

Адрес

Похожие вакансии

ИТ-Экспертиза
  • Москва

  • Не указана

Рекомендуем

Senior Python Developer

Reinvent Baltics

  • Москва

  • Не указана

Рекомендуем
ИТ-Экспертиза
  • Москва

  • Не указана

Рекомендуем
Кассиопея
  • Москва

  • Не указана

Ригла-Здравсити
  • Москва

  • Не указана

Амбрелла
  • Москва

  • Не указана

Нексус
  • Москва

  • от 450000 RUR

БУЛАТ
  • Москва

  • от 450000 RUR

JT marketing

Python Developer

JT marketing

  • Москва

  • от 5000 USD

Mad Brains
  • Москва

  • от 5000 USD

ГАРДА ТЕХ СОЛЮШНС ГРУПП

Senior Go Developer

ГАРДА ТЕХ СОЛЮШНС ГРУПП

  • Москва

  • от 5000 USD

Клируэй Текнолоджис
  • Москва

  • от 5000 USD

Miractal
  • Москва

  • от 5000 USD

Фалькон Тех
  • Москва

  • от 300000 RUR

Хотите оставить вакансию?

Заполните форму и найдите сотрудника всего за несколько минут.
Оставить вакансию