Über diese Staff Engineer - Software - DSP Stelle bei Ambiq Micro, Inc.
Company Overview
Ambiq is on a mission to enable intelligence everywhere — powering the AI edge revolution with the world's lowest-power semiconductor solutions.
Built on our proprietary sub- and near-threshold technology, our chips deliver multi-fold improvements in energy efficiency without costly process scaling. Since 2010, we've shipped over 300 million units to customers building smarter wearables, medical devices, IoT products, and AI-powered edge applications.
Our cross-functional teams span design, research, development, production, marketing, sales, and operations across Austin, Hsinchu, Shanghai, Shenzhen, and Singapore. We move fast, tackle hard problems, and create space for people to grow through complex, meaningful work that shapes the future of technology.
We're looking for self-motivated, creative problem-solvers who are eager to push technological limits and make a real impact in energy efficiency.
At Ambiq, we live by five values: Innovate. Collaborate. Focus. Learn. Achieve.
If that's you, join us — the intelligence everywhere revolution starts here.
Scope
As the Staff Embedded Software Engineer, DSP at Ambiq, you will drive the development and testing of the customer DSP environment in AmbiqSuite SDK on Ambiq SoC devices and emulation platforms. This includes evaluating and refining the execution environment for our HiFi5 DSP, including real-time execution/schedulers, inter-processor communications, and remote messaging protocols. You will also be responsible for porting and optimizing our Hardware Abstraction Layer (HAL) code to support DSP-assigned peripherals. In addition, you will be responsible for the initial bring-up of the DSP as a co-processor for our ARM Cortex M55 application.
This role will work within our global MCU and Radio software development teams and will work closely with the architecture team and local SoC design team, focusing on DSP software development and test activities.
A successful candidate should be a fast-learning, result-driven, and self-motivated team player with an “always learning” mindset. They should have an inquiring spirit and be comfortable in a lab environment and in executing hands-on debugging for embedded systems.
Responsibilities
- Lead the design, development, and maintenance of the HAL interfaces for peripherals assigned to the HiFi5 DSP. These will likely include peripherals such as timers, PDM interfaces, I2S interfaces, and low-power analog microphone interfaces.
- Evaluate possible RTOS or lightweight schedulers and port these to our SDKs.
- Design and develop boot state machines and IPC/RPC messaging protocols.
- Design, develop, and maintain examples and software test cases for the DSP environment.
- Support customer use of the environment, including optimizing customer workloads.
- Take a key role in pre-silicon verification on the FPGA, as well as post-silicon bring-up, verification, performance optimization, and debugging, focusing on these blocks.
- Support design verification (DV) and validation engineers, field engineers, and key customers as needed.
Qualifications
- MS in ECE or Computer Science and 6+ years of experience or BS ECE/CS with 8+ years of experience, with at least 3 years focusing on DSP software environments and code development, or related subsystems;
- Specific experience with the Cadence HiFi5 DSP and the Xtensa toolchain and experience with using profiling tools for performance evaluation (MIPS) is a real plus.
- Experience with inter-processor communications systems using hardware mailboxes and shared memory is preferred.
- Experience working with multicore embedded processing systems is preferred;
- Experience with audio processing algorithms on DSPs is a plus (e.g. AEC, NR, AEC, EQ, and AGC).
- Experience with DSP algorithm optimization to reduce latency and power is preferred.
- Familiarity with the basics of digital signal processing theory (e.g., sampling, time/frequency domain transformation, FIR, IIR, FFT/IFFT, and SNR).
- Experience with developing embedded MCU code in C and assembly language on ARM Cortex-M Processors is required.
- Experience with at least one MCU IDE from ARM, Keil, IAR, Eclipse, Ozone, or other;
- Good hands-on experience on lab equipment such as oscilloscopes, logic analyzers, audio analyzers, etc. for debugging issues;
- Experience with Jira, Confluence and collaboration tools;
- Experience with source code control systems (git) required;
- Understanding of software testing and test automation principles;
- Excellent problem-solving skills dealing with complex system-level issues related to HW/SW debug;
- Experience with scripting languages required, and Python experience is specifically desirable;
- Strong communication and documentation skills.