Software Development Engineer
Core
Design and execute test cases for low-level driver development, support board bring-up, and automate testing for hardware/software interaction.
Role type
Embedded Systems Test Engineer
Builds
Low-level drivers, test automation scripts, and reliability testing strategies for hardware/software layers.
Domain
Embedded systems, IoT, hardware/software integration
Required skills
C/C++, Linux development, low-level communication protocols (I2C, PCIe, USB), Git, logic analyzer usage
Preferred skills
Linux kernel development, 802.11 networking, Wireshark, Jenkins, Python, Pytest, IoT/robotics project experience
Technologies
C, C++, Linux, I2C, PCIe, USB, Git, Wireshark, Jenkins, Python, Pytest
Responsibilities
Design and execute test cases for low-level driver development; Develop tools and scripts to support test execution; Support board bring-up and manufacturing-line testing; Triage and maintain existing automation and testbeds; Automate repetitive manual test cases; Develop reliability-testing strategies for the hardware/software interaction layer; Develop API-testing strategies for the abstraction layer used by user-space applications.