Jobs · Massachusetts

Senior Systems Software Development Engineer

Sonos, Inc. · Boston, MA · 1 mo ago
HybridFull-time
We need to produce HTML fragment with sections: About the role? The posting includes intro about Sonos mission, location, visa sponsorship, repeated. We ask that applicants be authorized... etc. We need to include sections only when real specific content. We have location and visa sponsorship info. Could combine into a short paragraph. Use

for section headings: About the role, Responsibilities, Requirements, Qualifications, Skills, Benefits, Pay, Schedule. We need to decide which sections have content. - About the role: we have mission statement, collaborative environment, location, visa sponsorship. Could be a paragraph. - Responsibilities: list of duties under "What You’ll Do". That's many bullet points. - Requirements: Basic Qualifications list. - Qualifications: Preferred Qualifications list. - Skills: maybe not separate; we could embed in Requirements/Qualifications. But we could have a Skills section if there is explicit skill list; but we have many skill items in qualifications. Probably better to put them under Requirements and Qualifications. - Benefits: we have benefits list. - Pay: we have base pay range description but no specific numbers. The rule: never create Pay section unless posting actually states them. It states "The base pay range for this role based off geographic location is: The specific pay offered will depend..." It does not give actual numbers, just says depends. That's not specific numbers; it's vague. The instruction: "never emit a heading followed by filler/placeholder text (e.g. 'commensurate with experience', 'not specified', 'N/A', 'varies', 'TBD')". So we should NOT create a Pay section because it's not specific. So omit Pay. - Schedule: location says hybrid role, based in Boston or Seattle, in office 4x/week. That's schedule info. Could be a Schedule section. It states "Location: This is a hybrid role, based in either our Boston, MA, or Seattle, WA Sonos Office in office 4x/week." That's schedule (in-office 4 days/week). So we can include Schedule section with that info. We must not repeat job title as heading. No Job ID. We must remove boilerplate: EEO, legal, etc. Also remove duplicated lines (the intro appears twice). We'll keep one copy. We need to preserve all substantive information. Let's extract content: Intro/mission: "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." Location/Visa: "Location: This is a hybrid role, based in either our Boston, MA, or Seattle, WA Sonos Office in office 4x/week. Visa Sponsorship: Sonos is unable to sponsor or take over sponsorship of an employment visa for this role at this time. We ask that applicants be authorized to work for any US employer, both now and in the future." We could combine into About the role paragraph. Responsibilities bullet list: each line after "What You’ll Do:" until "What You’ll Need". Let's capture them: - Design and implement real-time system software architectures leveraging SMP (symmetric multiprocessing) and AMP (asymmetric multiprocessing) approaches for embedded audio systems - Bring up, debug, and maintain bootloader (U-Boot) and embedded Linux across new hardware platforms. - Lead early board bring-up and debug of new PCBs using ARM SoCs, WiSoCs, BT SoCs, and microcontrollers. - Integrate vendor SDKs, BSP components, and OS modules into the build and release process - Develop and maintain HAL libraries enabling clean, testable interfaces between hardware and user space. - Identify platform gaps relative to hardware capabilities and product requirements; propose and deliver improvements to enable faster prototyping and evaluation of new hardware. - Contribute to BSP validation and system-level debugging across HW/SW boundaries. - Define, execute, and document unit and integration testing for system software components. - Partner with silicon and component vendors to coordinate support and resolve platform issues across CPU/radio SoCs, MCU/PIC, NPU/GPU, and peripheral devices. - Support hardware engineering teams with deep technical debugging and contribute to OS/platform modernization efforts. Basic Qualifications bullet list: - Bachelor’s in Computer Engineering, Electrical Engineering, Computer Science or related field - At least 5 years of professional experience developing firmware/system software for embedded systems - Strong proficiency in C/C++ (Python is a plus). - Significant experience with embedded Linux, kernel internals, and device driver development. - Experience bringing up and debugging systems using U-Boot and common boot flows. Preferred Qualifications bullet list (many): - Experience with the HDMI subsystem (Video, ARC/eARC, CEC). - Prior hardware design exposure and ability to read schematics/datasheets. - Familiarity for low-level optimization and performance tuning. - Familiarity with USBPD and development experience in USB PD ICs - Experience working in Agile development environments. - Experience with toolchain and debug tooling (e.g., gcc, binutils, gdb). - Experience designing and developing software/firmware using Free-RTOS as developing bare-metal applications for microcontrollers - Strong debugging capability using tools such as JTAG, logic analyzers, and oscilloscopes. - Proven ability to build performance-critical software in resource-constrained environments (e.g., high-speed peripheral drivers). - Proficiency with Yocto Project / OpenEmbedded workflows. - Strong understanding of Linux execution contexts and concurrency, including locking/mutexes, SMP behavior, and kernel/user boundaries. - Familiarity with key interfaces/protocols such as: - DDR, NAND, PCIe, Ethernet, USB - SPI, I2C, UART, I2S - TCP/IP, Wi-Fi (802.11), Bluetooth/BLE We need to preserve the list formatting; we can keep as
  • items. For the nested list under "Familiarity with key interfaces/protocols such as:" we could either keep as a paragraph then sublist. Probably better to keep as a
      with items, and then a nested
        for the sub-items. But the instruction: Use
        • for any list of duties/requirements/benefits. So we can have nested lists. Benefits list: - 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! Schedule: "Location: This is a hybrid role, based in either our Boston, MA, or Seattle, WA Sonos Office in office 4x/week." We'll put that in Schedule section. Now produce HTML fragment with headings

          for each section we include: About the role, Responsibilities, Requirements (Basic Qualifications), Qualifications (Preferred Qualifications), Benefits, Schedule. We might also include a Skills section? Not needed. We must not include empty sections. Let's craft. We need to ensure we don't include boilerplate like EEO, legal, etc. Also remove duplicated intro lines. We'll output only HTML. Let's write:

          About the role

          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. Location: This is a hybrid role, based in either our Boston, MA, or Seattle, WA Sonos Office in office 4x/week. Visa Sponsorship: Sonos is unable to sponsor or take over sponsorship of an employment visa for this role at this time. We ask that applicants be authorized to work for any US employer, both now and in the future.

          Responsibilities

          • Design and implement real-time system software architectures leveraging SMP (symmetric multiprocessing) and AMP (asymmetric multiprocessing) approaches for embedded audio systems
          • Bring up, debug, and maintain bootloader (U-Boot) and embedded Linux across new hardware platforms.
          • Lead early board bring-up and debug of new PCBs using ARM SoCs, WiSoCs, BT SoCs, and microcontrollers.
          • Integrate vendor SDKs, BSP components, and OS modules into the build and release process
          • Develop and maintain HAL libraries enabling clean, testable interfaces between hardware and user space.
          • Identify platform gaps relative to hardware capabilities and product requirements; propose and deliver improvements to enable faster prototyping and evaluation of new hardware.
          • Contribute to BSP validation and system-level debugging across HW/SW boundaries.
          • Define, execute, and document unit and integration testing for system software components.
          • Partner with silicon and component vendors to coordinate support and resolve platform issues across CPU/radio SoCs, MCU/PIC, NPU/GPU, and peripheral devices.
          • Support hardware engineering teams with deep technical debugging and contribute to OS/platform modernization efforts.

          Requirements

          • Bachelor’s in Computer Engineering, Electrical Engineering, Computer Science or related field
          • At least 5 years of professional experience developing firmware/system software for embedded systems
          • Strong proficiency in C/C++ (Python is a plus).
          • Significant experience with embedded Linux, kernel internals, and device driver development.
          • Experience bringing up and debugging systems using U-Boot and common boot flows.

          Qualifications

          • Experience with the HDMI subsystem (Video, ARC/eARC, CEC).
          • Prior hardware design exposure and ability to read schematics/datasheets.
          • Familiarity for low-level optimization and performance tuning.
          • Familiarity with USBPD and development experience in USB PD ICs
          • Experience working in Agile development environments.
          • Experience with toolchain and debug tooling (e.g., gcc, binutils, gdb).
          • Experience designing and developing software/firmware using Free-RTOS as developing bare-metal applications for microcontrollers
          • Strong debugging capability using tools such as JTAG, logic analyzers, and oscilloscopes.
          • Proven ability to build performance-critical software in resource-constrained environments (e.g., high-speed peripheral drivers).
          • Proficiency with Yocto Project / OpenEmbedded workflows.
          • Strong understanding of Linux execution contexts and concurrency, including locking/mutexes, SMP behavior, and kernel/user boundaries.
          • Familiarity with key interfaces/protocols such as:
            • DDR, NAND, PCIe, Ethernet, USB
            • SPI, I2C, UART, I2S
            • TCP/IP, Wi-Fi (802.11), Bluetooth/BLE

          Benefits

Similar jobs