At Sonos we want to create the ultimate listening experience for our customers and know that it starts by listening to each other. As part of the Sonos team, you'll collaborate with people of all styles, skill sets, and backgrounds to realize our vision while fostering a community where everyone feels included and empowered to do the best work of their lives.Building the world's leading sound experience starts with the experience we provide for our people. That's why we've been distributed from the start: initially between offices in Boston & Santa Barbara, and now with additional offices in Seattle, San Francisco & Paris. This role can be done from anywhere in the United States- any of our offices, or remotely from home. It's about impact, not location.As a Principal Software Engineer working in the Professional team, you will build software features to enable the next generation Sonos professional product portfolio. You're a creative problem solver who will leverage your experience in audio software, API design, or SDK implementation in designing and implementing a real-time operating system (RTOS) tailored for audio processing applications. You will work closely with our multidisciplinary team of software engineers, hardware engineers, and audio experts to create a robust and efficient RTOS that ensures low-latency and high-performance audio processing.If you love sound, creating breakthrough new products, and solving challenging problems, Sonos wants to hear from you!What You'll DoDesign and develop a real-time operating system optimized for audio processing applications leveraging open source or third party components. .Collaborate with cross-functional teams to define system requirements and specifications for the RTOS.Implement real-time scheduling algorithms, resource management, and task prioritization to ensure low-latency audio processing.Collaborate with firmware engineers on the development of device drivers and kernel-level components to interface with audio hardware and peripherals.Optimize system performance, memory footprint, and power consumption for embedded audio systems.Conduct rigorous testing and performance analysis of the RTOS to identify and resolve bottlenecks and potential issues.Collaborate with external developers and consultants and leverage externally available technologies.Document system architecture, design decisions, and coding standards.Stay up-to-date with industry trends and emerging technologies in real-time operating systems and audio processing.What You'll NeedResearch shows that candidates from underrepresented backgrounds often don't apply for roles if they don't meet all the criteria. If you don't have 100% of the skills listed, we strongly encourage you to apply if interested.Basic QualificationsBachelor's or higher degree in Computer Science, Electrical Engineering, or a related field.8+ years of experience developing real-time operating systems or embedded systems on multicore ARM processors and audio DSPs.Strong proficiency in C and C++ programming languages.Familiarity with audio processing algorithms and digital signal processing (DSP).Experience with real-time scheduling, kernel development, and device driver programming.Understanding of industry standards and protocols for audio bus interfaces (e.g., I2S, SPI, USB).Excellent problem-solving skills and the ability to work in a collaborative team environment.Strong communication and documentation skills.Preferred QualificationsMaster's or Ph.D. in a related field.Previous experience working on audio-related projects.Knowledge of audio frameworks and libraries (e.g., ALSA, ASIO, JACK).Experience with RUST.#LI-RemoteAt Sonos we consider a wide range of factors when determining