Embedded Software Engineer (JM)
Role details
Job location
Tech stack
Job description
Cirrus Logic is seeking a software engineer to join our team developing drivers that power advanced audio and haptics experiences in next-generation PCs. In this role, you'll be part of a collaborative team that works closely with hardware, firmware, and applications engineers to deliver high-performance, reliable Windows drivers that brings our cutting-edge technology to life. You'll work in a creative, hands-on environment that values curiosity, craftsmanship, and collaboration., * Design, implement, and maintain Windows drivers, automated tests, and supporting system software
- Collaborate with firmware, hardware, and applications teams to define and integrate new devices and features
- Investigate and resolve complex issues across software and hardware boundaries using tools such as debuggers, logic analyzers, oscilloscopes
- Participate in architecture reviews, code reviews, and continuous improvement initiatives
- Write and maintain clear, detailed technical documentation
- Support customer engagements and platform validation alongside applications and field teams
Requirements
The ideal candidate enjoys solving complex system-level problems, collaborating across hardware and software teams, and continuously expanding their technical depth. A background in Windows, Linux, or embedded driver development is preferred., * Bachelor's or Master's in Computer Science, Electrical Engineering, or related field
- 2+ years of experience in embedded or systems-level software development
- Proficiency in C and familiarity with Visual Studio or similar development environments
- Strong understanding of OS architecture concepts: synchronization, interrupts, race conditions, and memory management
- Experience developing or maintaining kernel-mode or low-level drivers
- Familiarity with serial buses and protocols such as I2C, SPI, I2S, HDA, or SoundWire
- Strong debugging and problem-solving skills using both software tools and hardware instruments
- Excellent communication and collaboration skills across multidisciplinary teams, * Experience with Windows Driver Framework (WDF/KMDF) or equivalent kernel driver model
- Understanding of PC architectures, chipsets, and board-level bring-up
- Experience with Gerrit-based workflows and CI/CD systems (Jenkins, SonarQube)
- Familiarity with static analysis and code quality tools
- Knowledge of C++, Python, or scripting for automation and test development
- Familiarity with test-driven development
Export control restrictions based upon applicable laws and regulations would prohibit candidates who are nationals of certain embargoed countries from working in this position without Cirrus Logic first obtaining an export license. Candidates for this role must be able to access technical data without a requirement for an export license. We are unable to sponsor or obtain export licenses for this role.