Job Title: Embedded Software Engineer 3
Contract Duration: 24 months
Location: Chillicothe, IL
Work Arrangement: Onsite
Pay Range: $60 - $63 per hour
Summary
The Embedded Software Engineer will be responsible for designing, developing, testing, integrating, and troubleshooting embedded software features for safety-focused machine applications. The role involves working with embedded C++, Linux, GitHub, datalinks, system-level feature design, validation planning, and issue resolution within an Agile sprint environment. The candidate must demonstrate strong coding ability, software design analysis, problem-solving skills, concise written communication, and the ability to collaborate effectively with global cross-functional teams in a fast-paced onsite engineering environment.
Responsibilities
- Design, develop, integrate, and test embedded software features for safety-related machine applications.
- Develop embedded software using C++, Linux, GitHub, debuggers, and compilers.
- Support full software development lifecycle activities including requirements decomposition, design, development, reviews, integration, testing, and delivery.
- Analyze and improve software efficiency, stability, scalability, and system performance.
- Troubleshoot embedded software issues through triage, debugging, and root cause investigation.
- Develop and support validation plans for embedded software features and system-level functionality.
- Collaborate with global machine, systems, software, and validation teams to align on project goals and deliverables.
- Participate in Agile sprint activities including daily standups, design reviews, sprint planning, and issue tracking.
- Work with embedded electronic controls used in safety detect machine applications.
- Support system-level feature design and specification activities.
- Work with datalinks and communication protocols such as CAN, Ethernet, or similar embedded communication systems.
- Review project requests and technical requirements to estimate development effort, identify risks, and support project planning.
- Read schematics and component data sheets to support embedded software development and troubleshooting.
- Communicate technical findings, risks, updates, and recommendations clearly to internal stakeholders.
Qualifications
- Bachelor’s degree in Computer Science, Software Engineering, Computer Engineering, Electrical Engineering, or a related technical field required.
- 6-7 years of embedded software engineering experience required.
- Master’s degree with 5 years of relevant industry experience may be accepted.
- Strong programming experience in C or C++ required.
- Experience developing embedded software in a Linux environment required.
- Experience with Git, debuggers, and compilers required.
- Experience with C Test, G Test, or similar software test suites required.
- Experience with system-level feature design and software specification required.
- Experience with datalinks such as CAN, Ethernet, or similar communication protocols required.
- Basic knowledge of the full software development lifecycle, including requirements gathering, functional specification authoring, development, testing, and delivery.
- Ability to troubleshoot software and system issues and make changes as needed to resolve problems.
- Knowledge of reading schematics and component data sheets preferred.
- Experience working in an Agile sprint environment preferred.
- Robotics, autonomy, detect sensor, or safety system experience preferred.
- GStreamer experience preferred.
- Must be able to work onsite 5 days per week.
Skills
- Embedded C/C++ Development: Strong ability to design, code, debug, and test embedded software features.
- Linux Development: Experience working in Linux-based embedded software environments.
- Software Design Analysis: Ability to evaluate requirements, develop specifications, and design system-level software features.
- Debugging and Troubleshooting: Ability to identify, triage, and resolve embedded software issues.
- Git and Development Tools: Experience using Git, debuggers, compilers, and related development tools.
- Software Testing: Experience with C Test, G Test, or similar test frameworks.
- Communication Protocols: Experience with CAN, Ethernet, or other embedded datalink communication systems.
- Validation Planning: Ability to support or develop validation plans for software features and system functionality.
- Agile Development: Experience working in sprint-based development environments with daily standups and design reviews.
- Technical Communication: Concise written communication style with ability to clearly document findings, updates, and recommendations.
- Collaboration: Ability to work with machine, systems, software, and validation teams across a global organization.
- Problem Solving: Strong ability to analyze technical issues and develop practical solutions.
- Emotional Intelligence: Ability to express technical opinions clearly and professionally without confrontation.
- Initiative and Ownership: Self-motivated, accountable, and able to drive tasks through completion.
- Preferred Technical Areas: Robotics, autonomy, detect sensors, machine safety systems, and GStreamer.
#LI-KG1
#INDOEM