Команда Common Yadro Platform разрабатывает программную экосистему для продуктов компании.
Мы создаём слои управления аппаратной платформой и ОС, Linux-based дистрибутивы и общие для продуктов сервисы на Golang. Common Yadro Platform позволяет продуктовым командам сосредоточиться на разработке бизнес-логики и берет на себя бо́льшую часть жизненно важных функций платформы, предоставляя необходимые интерфейсы для вышележащих уровней ПО.
В команду разработки ищем Специалиста по безопасной разработке c опытом работы в крупных Enterprise или Open Source проектах.
Приветствуется любая комбинация продуктового опыта, включая низкоуровневое программирование, администрирование систем, embedded или real-time разработку. Предстоит разбираться в аспектах работы системы под продуктовой нагрузкой, понимать как продукты работают в целом, быть готовым писать и портировать патчи, анализировать и оживлять аппаратуру на различных этапах её готовности, а так же помогать с запуском и отладкой дистрибутива в продуктах.
Чем Вам предстоит заниматься:
- анализ безопасности и оценка потенциальной уязвимости нового и существующего программного обеспечения с помощью технологий безопасной разработки (SDL). В частности — применение статического и динамического анализа кода (SAST, DAST), композиционного анализа (SCA, OSA), управление уязвимостями;
- взаимодействие с командами DevOps в части внедрения инструментов анализа кода в процесс непрерывной интеграции;
- взаимодействие с командами разработки и QA в части тестирования безопасности программного кода и интерпретации результатов тестирования.
Что мы ожидаем от будущего члена команды:
- понимание принципов безопасной разработки, а так же задач, возможностей и способов реализации технологий: фаззинга (fuzzing), статического анализа программного кода (static analysis), управления уязвимостями (vulnerability management);
- понимание особенностей внедрения SAST, DAST, SCA/OSA в уже существующий процесс разработки;
- опыт самостоятельного применения инструментов динамического и статического анализа — AFL, libfuzzer, Syzkaller, Crusher, Svace, PVS-Studio и им подобных;
- практический опыт применения инструментов непрерывной интеграции — Jenkins, GitLab CI/CD и т. д.;
- опыт применения инструментов коллективной разработки программного обеспечения — Jira, Confluence, BitBucket и им подобных;
- знание ОС Linux, практические навыки работы в командной строке;
- опыт автоматизации решения рутинных задач с помощью Unix shell (Bash), Python, Perl и других скриптовых языков;
- понимание принципов и практические навыки работы с системами управления версиями — Git, Mercurial и т. д.;
- знание английского языка на уровне чтения и написания технической документации.
Дополнительно приветствуем:
- опыт программирования на C/C++, Rust, Go и других языках;
- понимание базовых принципов функционирования сетей, систем хранения данных и телекоммуникационного оборудования.