Все вакансии России 0

Инженер ядра и протоколов (C/C++)

з/п не указана
NGRSOFTLAB
Москва Постоянная занятость Удаленная работа

Описание

Российский разработчик продуктов в области информационной безопасности ищет к себе в команду Инженера ядра и протоколов (C/C++). Мы — прогрессивная командаIT-специалистов в области разработки средств информационной безопасности, обработки и анализа данных, а также роботизации бизнес-процессов Обещаем много интересной работы на динамично растущем рынке, достойных вызовов, рост вместе с бизнесом и команду единомышленников! Задачи, которые необходимо решать: Поддержка и разбор (с первого месяца): • разбор обращений и инцидентов, воспроизведение проблем на стенде; • исправление дефектов C++-служб анализа и захвата: crash, race condition, memory leaks, heap corruptions; тесты и диагностика на исправленные дефекты; • снятие диагностики: журналы, счётчики, статистика; различение «детектор не сработал» и «данные не дошли»; • сопровождение релизов и обновлений на объектах: deb/rpm, systemd-юниты, Linux и Windows. По мере освоения кодовой базы: • правки ядра и библиотек: существующий конвейер обработки и проектирование нового; • нативные парсеры L7-протоколов по спецификации и по дампу: HTTP, TLS, SSH, DNS, SMB, Kerberos, LDAP, DCE-RPC, Oracle TNS, wire-протокол PostgreSQL и другие; • транспорт захвата и обработки трафика: DPDK, AF_PACKET, многопоточный hot path; • IPC между службами: модуль ядра Linux и драйвер под Windows. От претендента ожидаем: • C/C++: промышленная разработка от 5 лет; уверенное владение C++17 (стандарт проекта), понимание C++20; • управление ресурсами: ручное управление временем жизни объектов — RAII, явный владелец, освобождение на всех путях, включая ошибочные; без расчёта на автоматическое управление памятью; • многопоточность: модель памяти C++, атомики, барьеры; умение доказать потокобезопасность своей правки; • сети: TCP/IP на уровне реассемблирования, а не «клиент-сервер»; фрагментация IPv4/IPv6, перекрытия фрагментов; • трафик: понимание зеркалируемого трафика — дубли, потери, NAT, асимметрия; • Linux: systemd, права, сеть, пакеты; • отладка: разбор core-дампов, ASAN/UBSAN, gdbserver и удалённая отладка; • ABI: понимание того, что ломает совместимость при экспорте из DLL/SO; • сборка и версии: CMake на уровне чтения и правки целей; Git; • модуль ядра Linux: готовность работать с кодом IPC между службами (опыт сборки и отладки — плюс, не обязателен); • английский: чтение технической документации. Желательно: • профилирование, понимание кеша и NUMA; DPDK, hugepages, привязка к ядрам; опыт работы над крупной системой с десятками внешних зависимостей; • сборка и отладка модуля ядра Linux; • GTest, CI/CD; • Lua 5.x — понимание скриптового слоя продукта; • PostgreSQL, ClickHouse, LMDB; Kafka, syslog, IPFIX/NetFlow; • предметная область ИБ: MITRE ATT&CK, сигнатурный анализ. • Стек: C++17 (gcc, clang, MSVC), CMake, Git и непрерывная интеграция, Linux и Windows, deb/rpm, DPDK, собственный модуль ядра Linux для IPC, Lua 5.x, GTest, PostgreSQL, ClickHouse, LMDB, Kafka, syslog, IPFIX/NetFlow #NGRTeam предлагает своим сотрудникам: Забота о достатке: Достойный уровень оплаты труда; Забота о развитии: Работа в команде профессионалов; Возможность профессионального развития и карьерного роста.

Откликнуться
Источник: hh · 3 дня назад

Похожие вакансии в городе Москва

Все вакансии в городе Москва →