Embedded Systems Software Engineer
Core
Design, develop, and validate software for complex hardware test and control systems, interfacing directly with physical systems, sensors, and instrumentation.
Role type
Embedded Systems Software Engineer
Builds
Test and control software applications, automated test frameworks, and data acquisition/logging tools
Domain
Hardware testing, lab automation, embedded systems
Deliverable
production ML models | product features | dashboards & analysis
Required skills
C# programming, object-oriented design, Git version control, regression testing, hardware/software co-design
Preferred skills
Lab automation development, communication interfaces (USB, Ethernet, serial), data visualization, cross-disciplinary collaboration
Technologies
C#, Git, USB, Ethernet, serial, instrument control APIs
Responsibilities
Design and maintain software applications interfacing with hardware and sensors; Write, debug, and refactor C# code for test control and data acquisition; Collaborate on hardware/software co-design and interface definitions; Develop automated test frameworks and participate in regression testing; Diagnose and resolve issues spanning software, firmware, and hardware boundaries; Support system bring-up, integration, and troubleshooting in lab environments
Seniority
Mid-Senior level (4-7 years experience)