Role:
Embedded Software Engineer Location: Mossville, IL 61552
Duration: 24 Months
Experience: 6-7 Years
Position Type: New Position
Position OverviewWe are seeking an experienced
Embedded Software Engineer with
6-7 years of hands-on experience in
Embedded C++, Linux, and Git/GitHub. The engineer will support the
Detect Application group within the Cat Robotics Division, working as part of a global engineering team to design, develop, integrate, and test embedded software features for safety-critical machine applications.
The ideal candidate will have strong software development and design skills, excellent troubleshooting abilities, and the ability to collaborate effectively with global, cross-functional engineering teams.
Key Responsibilities- Design, develop, integrate, and test embedded software from requirements through production and commercial deployment.
- Develop embedded software features using C++ and Linux.
- Perform systems requirements decomposition, software design, development, code reviews, integration, and testing.
- Troubleshoot, triage, and resolve software issues.
- Develop and maintain validation plans and support software validation activities.
- Analyze and improve system efficiency, stability, scalability, and resource utilization.
- Participate in an Agile/Scrum environment, including sprint planning, daily stand-ups, and design reviews.
- Collaborate with machine, systems, software, and validation engineering teams across global locations.
- Review technical and project requirements and provide input on development effort, timelines, and implementation.
- Read and interpret schematics, technical specifications, and component data sheets.
- Support software changes and troubleshooting throughout the development lifecycle.
Required Skills- 6-7 years of professional software engineering experience.
- Strong hands-on programming experience with Embedded C++.
- Strong experience working with Linux in embedded environments.
- Experience with Git/GitHub and modern software development workflows.
- Strong software design and analysis skills.
- Experience with debuggers, compilers, and software development tools.
- Experience with C test and Google Test (GTest) suites.
- Knowledge of system-level feature design and software specifications.
- Experience with machine/embedded datalinks such as CAN and Ethernet.
- Understanding of the complete software development lifecycle, including requirements, design, development, testing, integration, and delivery.
- Strong troubleshooting and problem-solving skills.
- Excellent verbal and written communication skills.
Preferred / Desired Skills- Experience with GStreamer.
- Experience working with detect sensors.
- Experience in robotics, autonomy, or related technologies.
- Experience developing software for safety-critical or industrial applications.
- Experience working with embedded electronic controls.
Education & Experience- Bachelor's degree in Computer Science, Software Engineering, Electrical/Computer Engineering, or a related field.
- 6-7 years of relevant industry experience required.
- A Master's degree may be accepted with 5 years of relevant industry experience.
Team & Work Environment- Join a 12-14 member global engineering team.
- Participate in daily stand-ups, sprint activities, design reviews, and technical discussions.
- Collaborate with culturally diverse, cross-functional teams located across multiple regions.
- Ability to work effectively in a global Agile engineering environment.
Team MissionThe Detect Application team is responsible for delivering
high-quality DETECT safety technology products and solutions to customers on time and within budget. This role will contribute directly to the development of embedded software supporting safety-detection technologies used in machine applications.
Typical Task Breakdown- Systems requirements decomposition
- Software architecture and design
- Embedded software development
- Code and design reviews
- Software integration
- Unit and system-level testing
- Issue triage and troubleshooting
- Validation planning and execution
Top 3 Skills- Strong Embedded C++ coding skills
- Strong software design and analysis capabilities
- Ability to communicate technical positions clearly and professionally
Soft SkillsRequired:- Concise and effective technical writing
- Strong problem-solving and interpersonal skills
- Ability to communicate clearly in a collaborative environment
Desired:- Strong communicator
- High emotional intelligence
- Ability to express technical opinions and positions professionally without confrontation
- Ability to work effectively with culturally diverse teams
Why This Role?This role provides an opportunity to gain extensive embedded software experience while contributing to the development of
advanced safety technology products. The engineer will work across multiple software and data-management designs supporting safety applications widely recognized within the mining and industrial equipment industry.