Senior Software Engineer, Compute Software
Core
Design, build, and maintain high-performance C++ software, runtime components, and diagnostic tools for custom silicon and compute platforms.
Role type
Senior IC systems software engineer (compute/silicon)
Builds
Scalable Hardware-in-the-Loop test harnesses, automated regression frameworks, and CI/CD pipelines across firmware, kernel, runtime, and compiler layers.
Domain
Semiconductor hardware validation and compute platform software
Deliverable
production ML models | product features | infrastructure
Required skills
modern C++, data structures and algorithms, object-oriented design, modular architecture, Linux/Unix environments, build systems, Python/Bash scripting, CI/CD workflows, system-level debugging, concurrency management
Preferred skills
Hardware-in-the-Loop setups, automated lab testbeds, post-silicon validation, System-Level Testing, ASIC bring-up, Memory-Mapped I/O, device drivers, firmware, POSIX APIs, bare-metal/RTOS environments, PCIe/I2C/SPI/UART/JTAG/DDR/DMA, LLVM/MLIR/GCC toolchains, runtime performance optimization for ML workloads
Technologies
C++, Python, Bash, Linux, LLVM, MLIR, GCC, PCIe, I2C, SPI, UART, JTAG, DDR, DMA
Responsibilities
Design and maintain high-performance C++ software and runtime components for custom silicon; Build scalable Hardware-in-the-Loop test harnesses and automated regression frameworks; Troubleshoot software-to-hardware communication issues and concurrency bugs; Collaborate with hardware design and compiler teams to translate specifications into production software; Develop developer tooling and telemetry monitors to improve qualification velocity.
Seniority
Senior, hands-on IC