Lead Hardware Engineer
Pittsburgh, Pennsylvania or San Francisco Bay Area, California (relocation assistance offered)
The Lead Embedded Engineer will manage the day-to-day responsibilities of our embedded team, guiding application development for the world's most energy-efficient programmable processor. They will collaborate across all teams, gathering requirements and information to successfully bring up new silicon. Further they will work closely with the compiler team to implement customer requirements and build optimized libraries and firmware. 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 the clients breakthrough technology. If you are an engineer who wants to play an integral role on 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
● Manage the day-to-day responsibilities of the embedded engineering team, including:
○ Leading the planning of sprints
○ Creating, rescoping, and keeping track of tasks
○ Assisting in debugging to unblock engineers
● Develop embedded applications using compiler and customer requirements, specifications, and existing code to target the clients processor
● Work on the bring up of new silicon, including:
○ Developing chip documentation and helping to create a bring up plan
○ Designing custom PCBs for the processor, which integrate sensors, power supplies, and radios
○ Verifying the functionality of the processor under different operating modes and conditions
○ Validating and measuring the performance and energy of the processor on internal and customer benchmarks
○ Optimizing code to efficiently target the processor
● Contribute to an embedded TinyML software stack including a library of optimized common machine learning operators
● Work closely with compiler team to test and refine compiler feature set
Required Qualifications & Experience Requirements
● Must be an excellent embedded engineer with 7+ years of post-graduate experience OR similar experience with a PhD
● Bachelor's degree in CS, Engineering or related field required; Master's degree or PhD preferred.
● Prior experience bringing up new silicon or working on new silicon
● Deep knowledge of at least one embedded platform, such as MSP430, STM32, Ambiq Apollo, PIC32, or similar
● Experience developing and deploying applications under resource constraints
● Experience using non-standard build environments and compiler toolchains, especially for embedded systems
● Experience using industry standard development and debugging tools for embedded development
● Strong attention to detail, good work ethic, ability to work on multiple projects simultaneously, and good communication skills
● Good problem solving skills; ability to develop solutions and ideas when faced with problems or issues.
Desired Qualifications & Experience Requirements
● Experience building TinyML models and deploying models under severe resource constraints (e.g. limited memory)
● Experience writing optimized BLAS and DSP kernels
● Experience with compiler development, including LLVM and/or MLIR
● Experience with PCB board design using industry standard CAD tools like Altium or similar
● Knowledge of computer architecture