At a glanceSummarised by Seekless from the posting.
Must have7
Bachelor's Degree in Computer Science, Computer Engineering, Electrical Engineering or equivalent experience
Basic proficiency in C/C++
Basic understanding digital electronics and embedded systems
Basic familiarity with low level communication protocols like I2C, PCIe, and USB
Understanding of GIT as a source code management system
Experience using logic analyzers and other digital electronics test tools
Experience developing for Linux
Nice to have7
Strong C/C++ development skills
Experience in Linux kernel development
Basic understanding of 802.11 networking and/or experience using tools like WireShark for network traffic analysis
Experience in testing IoT/Embedded systems (Preferably in a Linux environment)
Experience with Jenkins
Familiarity with Python and Pytest
Interest in DIY IoT and robotics projects
Eligibility1
Can work in English
Skills
C
C++
GIT
Linux
Jenkins
Python
Pytest
I2C
PCIe
USB
WireShark
802.11
About the company
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.
About the role
As a software development engineer for the Diags-Systems team, you will be responsible for supporting testing of low level drivers and firmware in a fast paced, dynamic environment. Prospective candidates will be hands-on engineers who will design and develop test processes and tools to run on and off target. This will require collaboration with your partners in Development and Quality to help define and execute the test strategies in order to deliver high quality products. In addition, you will work with teams of industry-leading innovators across acoustics, mechanical engineering, software engineering, hardware engineering, and user experience. If you love music, solving challenging problems and delivering high-quality products, we want to talk with you!
What You’ll Do
•
Design and execute test cases to support low level driver development, this may require creative approaches for automating physical interactions with units under test.
•
Develop new tools and scripting to aid in test execution.
•
Support new board bring up and manufacturing line testing
•
Triage and maintain existing automation and testbeds
•
Work with manual test engineers to develop automation around repetitive, manual test cases
•
Work with team members to develop strategies for reliability testing of the HW/SW interaction layer
•
Work with team members to develop strategies for API testing of the abstraction layer used by user space applications
What You’ll Need
Basic Qualifications
•
Bachelor’s Degree in Computer Science, Computer Engineering, Electrical Engineering or equivalent experience
•
Basic proficiency in C/C++
•
Basic understanding digital electronics and embedded systems
•
Basic familiarity with low level communication protocols like I2C, PCIe, and USB
•
Understanding of GIT as a source code management system
•
Experience using logic analyzers and other digital electronics test tools
•
Experience developing for Linux
•
Can work in English.
Nice to have
Preferred Qualifications
•
Strong C/C++ development skills
•
Experience in Linux kernel development
•
Basic understanding of 802.11 networking and/or experience using tools like WireShark for network traffic analysis
•
Experience in testing IoT/Embedded systems (Preferably in a Linux environment)
•
Experience with Jenkins
•
Familiarity with Python and Pytest
•
Interest in DIY IoT and robotics projects
Hiring process
Your profile will be reviewed and you’ll hear from us once we have an update. At Sonos we take the time to hire right and appreciate your patience.