Source description
About the role
Design, implement, and maintain embedded firmware for DSP cores and MCUs (RISC V and/or Arm).
Build and optimize real-time signal-processing pipelines (fixed-point and/or floating-point), potentially including FFTs, filters, modulation/demodulation, codecs, feature extraction, or control loops.
Develop firmware using a mix of C/C++ (and selective assembly where appropriate), with strong focus on performance, memory, and power optimization.
Work with SoC/board peripherals: DMA, timers, SPI, I²C, UART, I²S/TDM, PWM, GPIO, and relevant bus fabrics.
Bring up new hardware: boot flows, clocks, memory maps, interrupt vectors, peripheral init, and early validation.
Implement and debug drivers and RTOS components (e.g., Zephyr or equivalent), including task scheduling, synchronization primitives, and ISR design.
Develop test strategies: unit tests, hardware-in-the-loop tests, test automation, and manufacturing/production diagnostics.
Use debugging/profiling tools: JTAG/SWD, logic analyzers, oscilloscopes, trace (ETM/ITM), and cycle-accurate profiling when available.
Collaborate cross-functionally with hardware, FPGA/ASIC, systems, and application teams to define requirements and interfaces.
Contribute documentation: architecture notes, interface specs, timing budgets, work packages, and bring-up guides.
Participate in code reviews and help establish best practices for embedded quality, safety, and maintainability.
More at Cirrus Logic
Related open roles
Fall 2026 Co-Op - Embedded Software AI Intern
Austin · Onsite
Embedded Software Engineer
Taipei · Hybrid
Senior Software Applications Engineer
Austin · Hybrid
Software Applications Engineer
Austin · Hybrid
Applications Engineer (JN-64001161)
Austin · Hybrid
Embedded Audio Firmware Engineer
Newbury, England · Hybrid