Мы ищем разработчика в команду приложения-антивируса Kaspersky Endpoint Security для Windows. Это комплексное программное решение, которое помогает обеспечивать комплексную автоматизированную защиту от киберугроз рабочих станций и серверов, осуществляя контроль работы в корпоративной среде.
У нас миллионы пользователей, десятки миллионов установок, амбициозные планы на несколько лет вперед.
Подробнее о продукте можно посмотреть здесь:
https://www.kaspersky.ru/small-to-medium-business-security/endpoint-advanced
1.Antimalware Development
Мы разрабатываем и поддерживаем функционал обновления баз и продукта в целом, разрабатываем бизнес-логику для полнодискового и файлового шифрования, компонентов контроля Web и используемых устройств, и прочее.
Чем предстоит заниматься:
- Разработка новой логики приложения;
- Написание автотестов и unit-тестов для нового функционала;
- Поддержка выпущенных версий продукта.
Что Вам для этого нужно:
- Отличное знание С++, 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).