Embedded Software Engineer - Semiconductor Test Systems
- Discuss this with your agent
- Open in Claude
- Open in ChatGPT
Prepare application
- Draft this with your agent
- Open in Claude
- Open in ChatGPT
Role details
Tech stack
+21 more
Job description
Experience Range: 4+ years relevant embedded/system software experience Role Overview We are seeking Embedded Software Engineers to develop and maintain software for advanced semiconductor test platforms. The role involves C/C++ development on Linux and embedded systems, with significant interaction between software, hardware, operating-system components, and higher-level applications. Engineers will work across the embedded software stack, including low-level hardware interfaces, Linux platform software, APIs, system integration, debugging, and performance optimization. Key Responsibilities Design, develop, test, and maintain embedded and system-level software using C and C++. Develop software for Linux-based and embedded platforms used in semiconductor test systems. Implement software components that interface directly with hardware and operating-system services. Develop and maintain APIs and services for integration with higher-level applications. Debug complex hardware/software integration issues at system and board level. Develop and troubleshoot multithreaded software applications. Interface with embedded communication technologies including SPI, I2C, UART, Ethernet, and PCIe. Analyze system-level issues involving hardware, firmware, operating systems, drivers, and application software. Optimize software for performance, reliability, maintainability, and system stability. Collaborate with hardware, firmware, software, test, and product engineering teams. Participate in Agile activities including story planning, sprint execution, bug tracking, release planning, and retrospectives. Contribute to software quality through code reviews, debugging, testing, automation, and engineering best practices. Required Qualifications, C C++ Embedded C/C++ Python preferred Operating Systems / Platforms Linux Embedded Linux Embedded Systems System-level software development Hardware / Software Interfaces SPI I2C UART Ethernet PCIe Board-level hardware interfaces Software Engineering Multithreading Hardware/software integration System debugging API development Performance optimization Software testing and debugging Version control Agile development Domain Knowledge Semiconductor test systems Automated Test Equipment (ATE) Test and measurement systems Instrumentation Hardware automation #LI-SD1
Requirements
Bachelor’s or Master’s degree in Computer Science, Computer Engineering, Electrical Engineering, Electronics Engineering, or a related technical discipline. 4+ years of relevant software development experience in embedded, systems, or hardware-facing software. Strong hands-on programming experience in C and C++. Experience developing software in Linux and/or embedded Linux environments. Hands-on experience debugging hardware/software integration issues. Experience developing and debugging multithreaded applications. Working knowledge of embedded communication interfaces such as SPI, I2C, UART, Ethernet, PCIe, or equivalent interfaces. Experience with structured software development, source control, defect tracking, and release processes. Understanding of Agile software development practices. Ability to work on-site five days per week in either North Reading, MA or Sunnyvale, CA. Technical Skills
Apply for this position
This job is hosted externally. Click below to view the full posting and apply.
Prepare application
- Draft this with your agent
- Open in Claude
- Open in ChatGPT
Good distractions
Loading talks and stories from around this role…