Job Title:
Embedded Software Engineer II
Location:
Mossville, IL (Onsite – 5 Days/Week)
Interview Process:
2 Virtual Panel Interviews
Client: Caterpillar
Job Description
We are seeking an experienced
Embedded Software Engineer II
to join our team in Mossville, IL. This role focuses on the development, integration, and validation of automation and autonomy software for heavy-duty equipment and machinery. The ideal candidate will have strong embedded software development experience using C/C++, hands-on experience with Linux or RTOS environments, and expertise in sensor integration and system-level debugging.
Key Responsibilities
-
Design, develop, and maintain embedded software features for real-time control systems.
-
Develop software requirements, technical specifications, and support overall system architecture design.
-
Integrate sensors, controllers, and embedded hardware components into automation and autonomous machine platforms.
-
Perform software integration, troubleshooting, root cause analysis, and debugging of embedded systems.
-
Collaborate with cross-functional teams including systems, controls, validation, and hardware engineering.
-
Support software testing and validation activities in both laboratory and machine environments.
-
Analyze system performance and implement improvements to enhance reliability and functionality.
-
Participate in issue triage, defect resolution, and continuous improvement efforts.
Required Qualifications
-
Bachelor’s degree in Computer Science, Computer Engineering, Electrical Engineering, Mechanical Engineering, or a related technical field.
-
4+ years of embedded software development experience (3+ years with a Master’s degree).
-
Strong programming experience in
C and C++
.
-
Experience developing software in
Linux and/or RTOS environments
.
-
Hands-on experience with
sensor integration
, communication interfaces, and embedded control systems.
-
Strong troubleshooting, debugging, and problem-solving skills.
-
Experience working with real-time systems and embedded hardware.
Preferred Qualifications
-
Experience with
ROS (Robot Operating System)
.
-
Background in robotics, automation, autonomous systems, or machine control.
-
Experience developing software for off-highway, industrial, agricultural, construction, or heavy equipment applications.
-
Familiarity with software validation and system integration testing.
Day-to-Day Activities
-
Develop and enhance software functionality for machine automation systems.
-
Work closely with systems and controls engineers to implement new features.
-
Conduct debugging and performance analysis on embedded platforms.
-
Validate software through bench testing and on-machine testing.
-
Participate in design reviews and technical discussions with engineering teams.
Must-Have Skills:
C, C++, Embedded Systems, Linux/RTOS, Sensor Integration, Debugging, Real-Time Control Systems.
Nice-to-Have Skills:
ROS, Robotics, Autonomous Systems, Machine Control, Automation.