The Embedded Engineer will design and implement applications to run on the world’s most energy-efficient programmable processor. They will work closely with the compiler team to implement customer requirements and build libraries of optimized kernels (e.g. a custom TinyML software stack). This position is a unique opportunity to develop applications for cutting-edge hardware as part of a highly interdisciplinary team, helping to demonstrate the value of our breakthrough technology. If you are an engineer who wants to be part of an intensely skilled team and wants to have an immediate impact building the next generation of energy-efficient embedded applications, this is for you!
Key Responsibilities
- Develop embedded applications working from customer requirements, existing specifications, and existing code
- Deploy applications to processor targets, in software simulation, FPGA emulation, and silicon implementation
- Build out a board support package (BSP) for our processor and maintain a set of standard libraries
- Contribute to the software ecosystem, including optimized libraries for embedded TinyML, standard DSP kernels, and other common operations
- Validate and measure performance and energy characteristics based on customer application requirements
- Work closely with compiler team to test and refine compiler feature set
Required Qualifications & Experience Requirements
Must be an excellent embedded engineer with 5+ years of experience5+ years of experience with C and / or C++Deep knowledge of at least one embedded platform, such as MSP430, STM32, Ambiq Apollo, PIC32, or similarExperience developing and deploying applications under resource constraintsExperience using non-standard build environments and compiler toolchains, especially for embedded systemsExperience using industry standard development and debugging tools for embedded developmentStrong attention to detail, good work ethic, ability to work on multiple projects simultaneously, and good communication skillsGood problem solving skillsDesired Qualifications & Experience Requirements
Experience building TinyML models and deploying models under severe resource constraints (e.g. limited memory)Experience writing optimized BLAS and DSP kernelsExperience with compiler development, including LLVM and / or MLIRExperience with PCB board design using industry standard CAD tools like Altium or similarKnowledge of computer architectureWe offer a competitive compensation and benefits package, including 401K match, company-paid benefits, equity program, paid parental leave, flexibility, and more! We are committed to personal and professional development and strive to grow together as people and as a company.