Мы ищем разработчика в команду приложения-антивируса Kaspersky Endpoint Security для Windows. Это комплексное программное решение, которое помогает обеспечивать комплексную автоматизированную защиту от киберугроз рабочих станций и серверов, осуществляя контроль работы в корпоративной среде.
У нас миллионы пользователей, десятки миллионов установок, амбициозные планы на несколько лет вперед.
Подробнее о продукте можно посмотреть здесь:
https://www.kaspersky.ru/small-to-medium-business-security/endpoint-advanced
1.Antimalware Development
Кто мы:
Команда, работающая в составе отдела разработки корпоративного продукта (Kaspersky Endpoint Security). Основные функциональные области:
• Поддержка и реализация Anti-malware компонентов защиты (Мониторинг угроз, Cканирование, Анализ поведение, Защита от эксплойтов, Защита от шифрования, etc..);
• Интеграция с KSC(Централизованный узел управления продуктами), коннекторы интеграции, плагин;
• Обеспечение выполнения всех респонсивных действий EndpointDetectionAndResponse функционала.
Разработка новой логики приложения;
Написание автотестов и unit-тестов для нового функционала;
Поддержка выпущенных версий продукта.
Что Вам для этого нужно:
Отличное знание С++17, STL;
Знание базовых алгоритмов и структур данных;
Умение анализировать эффективность кода, анализировать дампы памяти.
Навыки разработки многопоточных приложений, решение проблем многопоточности.
2. Cloud & Server Integration Development
Мы разрабатываем и поддерживаем функционал взимодействия с облачными серверам и продукта в целом, разрабатываем бизнес-логику для мониторинга и анализа журналов, компонентов парольной защиты и ролевой модели, мы разрабатываем компоненты выполняющие обработку и обогащение большого потока телеметрии.
Чем предстоит заниматься:
Разработка новой логики приложения;
Анализ производительности предлагаемых решений;
Разработка кросплатформенного кода;
Написание автотестов и unit-тестов для нового функционала;
Поддержка выпущенных версий продукта.
Что Вам для этого нужно:
Отличное знание С++, STL;
Знание базовых алгоритмов и структур данных;
Навыки разработки многопоточных приложений, решение проблем многопоточности;
Умение писать код: Структурировать (способность разбить на сущности, способность определить их обязанности), умение именовать сущности.
3.Update & Encryption Development
Чем предстоит заниматься:
Разработка нового и поддержка существующего функционала в продукте Kaspersky Endpoint Security for Windows в критически важных областях: обновление антивирусных баз и компонентов продукта, шифрование файлов и дисков, контроль устройств и использования интернета;
Техническая декомпозиция задач и оценка планируемых доработок, проведение ревью кода;
Написание и поддержка тестов для разрабатываемого кода.
� Что Вам для этого нужно:
Знание основных практик и правил программирования на современном C++ (стандарт C++17, среда Visual Studio);
Умение эффективно применять библиотеки STL и Boost;
Знание системных механизмов Windows и основных разделов WinAPI (Files, Registry, Security);
Умение писать unit-тесты с помощью Google Test;
Умение проводить базовый анализ падений процесса с помощью WinDBG;
Плюсом будет опыт работы с C# для поддержки тестов.
Функциональные области команды:
Логика скачивания антивирусных баз (Updater);
Логика таргетированного применения обновлений продукта (Seamless Update Service) - патчей (Minor Update) и полных дистрибутивов (Major Update);
Компоненты шифрования дисков (Full Disk Encryption), файлов (File Level Encryption), компонент управления внешней технологией шифрования Microsoft BitLocker;
Компонент контроля внешних устройств, подключаемых пользователем к компьютеру (Device Control);
Продуктовая часть логики сканирования Web-трафика и почтовых сообщений на вирусы (Web Antivirus, Mail Antivirus);
Компонент контроля использования Web-ресурсов (Web Control);
Поддержка сервисных компонентов: защита самого продукта (Self Defence), трассировки производительности (Performance Monitor).
4.Applications Development
Ищем разработчика на C++ в команду разработки бизнес логики фронтлайн линейки продуктов Kaspersky / KES. В задачи входит разработка и поддержка функционала, основываясь на потребностях бизнеса.
Чем предстоит заниматься:
Техническая декомпозиция задач и оценка планируемых доработок, проведение ревью кода;
Разработка новой логики приложения;
Разработка кросплатформенного кода;
Написание автотестов и unit-тестов для разрабатываемого кода;
Анализ производительности предлагаемых решений;
Поддержка выпущенных версий продуктов.
Что Вам для этого нужно:
Знание C++ (стандарт C++17 +) на продвинутом уровне;
Глубокое понимание и опыт разработки многопоточных систем;
Желательно хорошее понимание особенностей работы ОС Windows (внутреннего устройства, API);
Умение писать unit-тесты (Google Test);
5.Business Logic Development
Кто мы: Команда, в составе отдела разработки домашних продуктов под Windows (Kapersky Standard/Plus/Premium, Kaspersky VPN, а также Kaspersky Small Office Security). Основные функциональные области:
Загрузка и установка продукта (web installer);
Автоматическое обновление продукта на более новую версию без прерывания защиты;
Подготовка патчей;
Фичи продукта из самых разных областей.
Чем предстоит заниматься:
Поддержка и разработка функционала установки и обновления продукта;
Разработка новых фич продукта;
Техническая проработка запросов на разработку (интерфейсы, форматы данных и т.п.);
Написание системных, интеграционных и юнит тестов для нового и существующего кода.
Технические требования:
Хорошее знание алгоритмов и структур данных;
Понимание принципов многопоточной разработки;
Хорошее знание С++;
Знание базовых архитектурных паттернов;
Понимание принципов работы ОС.
Стек разработки:
Windows API, С++, С#, MSI (Wix Toolset), Bazel.