Embedded Systems Staff Engineer
Core
Own the architecture, maintenance, and improvement of ARM architecture support for CPU emulation, binary analysis, and symbolic execution to help security teams analyze ARM and AArch64 binaries.
Role type
Staff Engineer, low-level systems software (CPU emulation & binary analysis)
Builds
ARM/AArch64 execution support, emulation infrastructure, and analysis engines for security testing
Domain
Cybersecurity, embedded systems, CPU architecture
Required skills
C/C++, Linux process execution, ARM/AArch64 assembly, low-level systems software, debugging complex native-code failures, software design
Preferred skills
OCaml, functional programming, vulnerability research, reverse engineering, firmware analysis
Technologies
QEMU, GDB, LLDB, strace, perf, sanitizers, core dumps, ELF, dynamic linking
Responsibilities
Own and evolve ARM/AArch64 execution support using emulation; Diagnose correctness, compatibility, and performance issues in instruction semantics and memory management; Add support for new ARM architectural features and execution environments; Investigate discrepancies between native, QEMU, and analysis engine execution; Improve performance and reliability of large-scale emulated workloads; Develop test suites and regression infrastructure; Debug customer binaries and firmware with unusual platform behavior
Seniority
Staff, hands-on IC
