Systems Software Engineer
QuadricJob Title
Systems Software Engineer
Role Summary
Join the Systems team to build and maintain the low-level software stack that bridges Quadric's General-Purpose Neural Processing Unit (GPNPU) hardware and higher-level SDKs. You will own components such as simulators, assemblers/loaders, debuggers, and C++ host APIs.
This role works closely with hardware and SDK engineers to deliver production-quality, low-latency tooling and abstractions for edge AI devices.
Experience Level
Mid-level - typically requires 5+ years of systems software experience (simulators, toolchains, debuggers, drivers, or performance-critical C++ libraries).
Responsibilities
Responsible for architecting, implementing, and maintaining foundational systems software for a new processor architecture.
- Maintain and optimize the instruction set simulator used for architecture validation and software development.
- Design and implement loader and assembler components, including ELF/binary format handling and efficient code loading.
- Develop and extend remote debugger backends to provide low-level visibility into device execution.
- Design, maintain, and document C++ host and core device APIs for SDKs and external users.
- Collaborate with hardware engineers to influence hardware/software co-design decisions based on simulator findings.
- Deliver production-ready, low-latency abstractions and debugging utilities relied on by internal and external developers.
Requirements
Must-have technical skills and experience for immediate impact.
- 5+ years building systems software: simulators, toolchains, debuggers, drivers, or performance-critical C++ libraries.
- Strong modern C++ skills (C++17/20) and systems-level programming experience.
- Advanced knowledge of RAII, manual memory management, object lifetimes, ownership models, and memory access optimization.
- Proven ability to design and maintain clean abstraction layers and public APIs.
- Experience at the hardware/software boundary: architectural simulation, debugger internals, developer SDKs, low-level toolchains (assemblers/loaders/ELF), or bare-metal performance-critical code.
- Proactive, adaptable approach to working on a new processor architecture.
Nice-to-have:
- Understanding of CPU/NPU pipelines, registers, caches, and silicon-level constraints.
- Experience with GPU/acceleration programming (CUDA, OpenCL, Vulkan) and SIMD/SIMT models.
- Linux driver development and tooling (CMake) experience.
- Familiarity with Rust for systems safety and concurrent programming patterns.
- Knowledge of functional programming concepts applied in non-garbage-collected environments.
Education Requirements
Not specified.
About the Company
Company: Quadric
Headquarters: Burlingame, California, United States
Quadric is building the world’s first supercomputer designed for the real-time needs of edge devices. Founded in 2016, the company empowers developers across industries with innovative general-purpose neural processing unit (GPNPU) architecture for neural network workloads. Co-founded by technologists from MIT and Carnegie Mellon, Quadric aims to enable groundbreaking technology development.
