Software Development Engineer

SonosBoston, MA
$131,082Onsite

About The Position

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 SW 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 SW 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 SW 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.

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.
  • Must possess expertise/knowledge sufficient to adequately perform the duties of the job being offered.
  • 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.

Responsibilities

  • Design and implement real-time SW 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 SW 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 SW 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.

Benefits

  • 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!
© 2024 Teal Labs, Inc
Privacy PolicyTerms of Service