Innatera
Senior NPU SDK Software Engineer
Rijswijk Office, Remote. Posted 5 months ago
The role
You will be responsible for the Python programming API of the chip, PyTorch customization, and the compiler for end-to-end applications. You will manage the full life-cycle of SDK features including the simulator, compiler, API, and infrastructure.
What you will do
- Take care of the full life-cycle of SDK features including the simulator, compiler, API, and infrastructure
- Set and uphold high standards for code quality, maintainability, testing, and release readiness
- Conduct code reviews and improve engineering practices
- Ensure robust documentation within the expertise domain
- Translate complex algorithm or hardware specifications into efficient, user friendly, and testable software behaviour
- Provide technical feedback and work closely with Digital Design, Firmware, and Applications teams
- Provide support to internal teams and customers to enable application development and solve issues
- Contribute to improving power consumption performance, latency, and performance bottlenecks
- Keep innovating and bring latest trend of the technology and best practice to the product
Required qualifications
- Bachelor’s or Master’s degree in Computer Science, Electrical Engineering, or a related field
- Strong Python development skills
- Extensive experience with PyTorch and its customization, including knowledge of internal mechanics
- Proven track record of designing modular, maintainable and testable software architecture
- Experience in low-power resource-constrained embedded programming
- Familiarity with hardware/software co-design concepts
- Highly flexible, with a readiness to step outside your immediate domain to drive team success
- A strong growth mindset with an active drive to master new tools and technologies
- Great communication skills
Nice to have
- Modern C++ development skills (including C++17/20)
- Exposure to bare-metal firmware development
- Solid understanding of computer architecture, particularly ARM or RISC-V-based systems, and basic digital design knowledge
- Familiarity with ML compilers like MLIR, IREE or PyTorch compiler (Dynamo)
- Familiarity with the runtime of TinyML or EdgeAI runtimes (TensorFlow Lite Micro, execuTorch)
- Knowledge of SNN (Spiking Neural Networks)
About the company
Innatera is a Dutch semiconductor company that develops ultra-efficient neuromorphic processors for AI at the edge. Their technology serves the IoT, wearable, embedded, and automotive domains.