Embedded C++ Engineer - Autonomous Systems

ARi
ARi

Peoria, IL, USA

Posted on Jun 26, 2026

Job Description

ARi, headquartered in East Peoria, IL, USA, is a rapidly expanding global engineering enterprise. The essence of our “i” symbolizes our distinctiveness from competitors – an embodiment of innovation, intelligence, ingenuity, and insight. Boasting a diverse team of over 1,500 engineering experts hailing from various nations and cultures across the globe, we are excellently poised to provide intricate and personalized resolutions to our esteemed clients

Duties & Responsibilities

  • Develop and maintain application-level C++ software supporting Semi-Autonomous Tractor Systems (SATS) and Command for Dozing (remote-control/autonomy) solutions for Large Track Type Tractors (LTTT).

  • Design, develop, debug, and validate software features supporting autonomous and remote-control machine operation.

  • Investigate and resolve field-reported software issues, implementing corrective actions and software enhancements.

  • Collaborate with Systems Engineers, Software Developers, Domain Architects, and Project Managers to deliver software releases and feature updates.

  • Participate in software integration, verification, and validation activities, including unit testing and Software-in-the-Loop (SIL) testing.

  • Support ongoing autonomy and automation initiatives, contributing to the expansion of autonomous capabilities across Caterpillar machine platforms.

  • Analyze software performance and troubleshoot communication issues using CAN and Ethernet diagnostic tools.

  • Develop and maintain technical documentation, test results, and software release artifacts.

  • Occasionally provide software support at proving grounds and machine validation events.

Required Skills

Technical Skills

  • Strong hands-on experience with 7+ years of C++ software development in a professional environment.

  • Experience developing software for automation, robotics, autonomous systems, or machine control applications.

  • Knowledge of software development lifecycle, debugging, integration, and validation processes.

  • Experience with Unit Testing and Software-in-the-Loop (SIL) testing methodologies.

  • Familiarity with CAN communication tools such as CANalyzer or CANape.

  • Experience using Ethernet diagnostic tools such as Wireshark.

  • Strong troubleshooting and root-cause analysis skills.

Preferred Skills

  • Experience with construction equipment, off-highway vehicles, or mobile machinery.

  • Background in robotics, autonomy, automation, or remote-control systems.

  • Understanding of machine controls, vehicle communication networks, and embedded software systems.

Education & Experience

  • Bachelor's degree in Computer Science, Software Engineering, Computer Engineering, or a related technical field required.

  • Over 7+ years of professional software development experience.

  • Demonstrated professional experience developing software in C++ is required.

  • Co-op experience, graduate research, or advanced academic projects may be considered toward relevant experience.

  • Experience in automation, robotics, autonomous systems, or machine control software development is highly preferred.

Disqualifiers

  • No demonstrated professional C++ development experience.

  • Lack of experience supporting software development, integration, or testing activities.

  • Limited exposure to automation, robotics, machine controls, or autonomous systems.