Software Development Engineer
Sonos Inc
Job Description
Software Development Engineer (Job Code: VM1031) 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. JOB DETAILS Design and implement real-time software system architectures based on symmetric and asymmetric multiprocessing technologies for Sonos' HiFi audio systems.
Provide software support for new CPU SoC architecture/platform evaluation and selection. Bring up and debug bootloader and embedded Linux operating system. Bring up and debug new PCBs with ARM based SoC, WiSoC, BTSoC and various Microcontrollers.
Develop and maintain Linux kernel drivers for a diverse set of hardware interfaces and peripherals, ensuring comprehensive coverage of various subsystems. Participate in operating system and boot-loader porting and maintenance as an individual contributor on multiple projects with cross‑functional teams. Develop and maintain the HDMI driver infrastructure including support for Video, ARC, eARC and CEC and userspace interface for them to enhance and support for audio product pipeline.
Design and implement audio peripheral device drivers to integrate smoothly with the HDMI subsystem. Integrate vendor SDKs and operating system components into our build system. Develop Hardware Abstraction Layer (HAL) libraries to facilitate communication between hardware components and user space.
Collaborate on specific aspects of user space development, including Yocto Project integration. Identify gaps in our current system software platform relative to HW capabilities and requirements. Identify improvements that enhance our ability to explore, prototype and evaluate new HW platforms.
Work with cross‑functional teams in new product introductions. Contribute to the new board bring‑up process by adding Board Support Package (BSP) and validation as well as system software and HW debugging. Develop, execute, and document system software unit and integration test plans.
Interface with vendors to align and coordinate support for entire system architecture (CPU and radio SoCs, PIC, MCU, NPU, GPU, and other peripherals). Provide software support to HW engineering teams in debugging hardware and assist in OS modernization efforts. EDUCATION AND EXPERIENCE REQUIREMENTS Master's degree (or foreign equivalent) in Computer Engineering, Electrical Engineering, Computer Science, or related field plus 2 years of experience in the offered position or related position.
SPECIAL REQUIREMENTS Experience in firmware development for embedded systems, including bring‑up of new microcontroller and microprocessor platforms. Proficiency in C and C++, including object‑oriented design, memory management, multithreading, and system‑level programming, with experience using Python for automation, testing. Experience with HDMI subsystems including EDID, CEC communication, ARC/eARC audio transport, and compliance with HDMI specifications (1.4, 2.0, 2.1, 2.2) and related digital audio standards (IEC 61937, IEC 60958).
Experience developing embedded software across Linux kernel and user space, including writing and maintaining kernel modules, character and platform device drivers, and integrating software into upstream or vendor Linux distributions. Perform kernel bring‑up and board support package integration, including device tree development, clock and power domain configuration, interrupt routing, and interface bring‑up for new hardware platforms. Experience integrating and maintaining open‑source bootloaders (U‑Boot), including porting to new boards, configuring SPL/TPL stages, enabling SoC subsystems, and validating DDR SDRAM, NAND Flash, PCIe, Ethernet, I2C, I2S, and other hardware interfaces.
Experience with ARM processor architectures, including privileged‑mode operations. Experience with building and using open‑source toolchain components, including gcc, GNU binutils, gdb, cross‑compilation environments, linkers, and low‑level debugging tools. Experience in using various debugging techniques, including JTAG debuggers, logic analyzers and oscilloscopes, trace tools and software instrumentation to diagnose timing issues, bus errors and memory faults.
Experience in designing and implementing performance critical software in resource‑limited environments which include device drivers for high‑speed peripherals, DMA‑based data transfers, interrupt‑driven workflows, and low‑latency data pipelines. Proficiency in software libraries/frameworks which include Open Embedded, Yocto Project. Experience in Agile software development processes.
Understanding of Linux kernel internals, including locking and synchronization primitives, concurrency models, process and interrupt contexts, memory subsystems, and SMP behavior governing user‑kernel interaction mechanisms. Experience with various protocols/interfaces, including TCP/IP, IEEE 802.11/Wi‑Fi, Bluetooth, BLE, SPI, I2C, UART, USB and other protocols. OTHER Salary: $131,082 per year.
Job Location: Sonos, Inc., 2 Avenue De Lafayette, Boston, MA 02111. If offered employment, must have legal right to work in U.S. BENEFITS PROGRAM Medical, Dental, and Vision Insurance A 401(k) plan with company matching and immediate vesting An Open Time Off policy (OTO) so you have maximum opportunity to disconnect and recharge, with no tenure‑based vacation accruals required 80 hours of sick time upon hire, refreshed annually Up to 12 paid holidays per calendar year Sonos offers a generous paid leave program for new parents or to care for a family member with a serious health condition, as well as short‑ and long‑term disability for your own medical condition.
Company‑paid Disability, Life, and AD&D Insurance Voluntary benefits, including Voluntary Life, AD&D, Accident, and Pet Insurance Mental health benefits to support your holistic well‑being A generous employee discount program & Sonos Radio HD - on us! Notice to U.S. Job Applicants: Sonos is an equal opportunity employer.
We evaluate qualified applicants without regard to race, color, religion, sex, sexual orientation, gender identity, national origin, disability, veteran status, and other legally protected characteristics. Sonos is committed to working with and providing reasonable accommodations to individuals with disabilities. If you need a reasonable accommodation because of a disability for any part of the employment process, please send an e‑mail to [email protected] and let us know the nature of your request and your contact information. #J-18808-Ljbffr