Anduril Industries
Senior Software Engineer (Android VMs)
Автоматический пересказ вакансии на русском. Полный текст на языке оригинала и форма отклика — на сайте работодателя.
Инженер в команду Connected Warfare / Warfighter Systems: проектирование, реализация и защита Android VM на базе crosvm, работа по всей цепочке виртуализации — от VMM и гостевого ядра до secure boot и платформенной безопасности.
Задачи
- Проектировать, создавать и поддерживать Android VM на crosvm: конфигурация VMM, модели устройств (virtio), интеграция гостя и хоста
- Осуществлять bring-up и загрузку гостевых образов Android внутри VM: ядро, загрузчик, init и слои Android framework
- Укреплять границу виртуализации: сокращать поверхность атаки, изолировать бэкенды устройств, анализировать модели угроз guest-to-host и host-to-guest
- Реализовывать и валидировать secure boot и цепочку доверия для VM (measured/verified boot, управление ключами, защита от отката)
- Анализировать и устранять проблемы безопасности Android VM; участвовать в threat modeling, security-ревью и устранении уязвимостей
- Отлаживать проблемы по всему стеку — гипервизор/VMM, гостевое ядро и userspace Android — с использованием подходящего инструментария
- Взаимодействовать с командами платформы, ядра и безопасности для локализации и решения проблем на стыке железа, прошивки и ПО
- Документировать архитектуру, свойства безопасности, границы доверия и проектные решения
Требования
- Сильное системное программирование на C/C++ и Rust, включая низкоуровневую работу с memory safety, конкурентностью и производительностью в реальных ограничениях
- Практический опыт работы с crosvm (или сопоставимым VMM: QEMU/rust-vmm/Firecracker): модели устройств, virtio, жизненный цикл VM и конфигурация VMM
- Твёрдое понимание виртуализации и аппаратной виртуализации (KVM, управление памятью гостя/хоста, vCPU, MMIO/IOMMU, транспорт virtio)
- Знание безопасности Android VM: изоляция гостя и хоста, sandboxing VMM/бэкендов устройств, поверхность атаки guest-to-host
- Основы платформенной безопасности Android: SELinux/sandboxing, verified boot (AVB/dm-verity), keystore/KeyMint и модель доверия Android
- Secure boot и цепочка доверия: measured vs verified boot, подпись и управление ключами, защита от отката, концепции root-of-trust
- Умение работать по спецификациям, исходникам ядра/драйверов и документации регистрового уровня
- Способность отлаживать низкоуровневые системные проблемы (логи ядра, ftrace/perf, gdb, трассировка/логирование VMM) на хосте и госте
- Владение Git
- Возможность получить и поддерживать допуск безопасности США (U.S. Security Clearance)
Условия
- Диапазон зарплат в США: $191,000—$253,000 USD (только базовая ставка)
- Высококонкурентные опционы включены в большинство офферов на полную занятость
- Комплексный пакет льгот для сотрудников на полную занятость (доступен практически бесплатно)
- Поддержка в вопросах здоровья и восстановления
Навыки
- C
- C++
- Rust
- crosvm
- QEMU
- rust-vmm
- Firecracker
- virtio
- KVM
- MMIO
- IOMMU
- Android
- SELinux
- AVB
- dm-verity
- KeyMint
- secure boot
- Linux kernel
- Git
- AOSP
- TrustZone
- U-Boot
- seccomp
- minijail
- fuzzing
- Qualcomm
- Android CTS/VTS