Linux C++ Software Engineer – Embedded / Machine Control

Trimble Inc.•Dayton, OH
•$115,600 - $158,900•Onsite

About The Position

Caterpillar Trimble Control Technologies (CTCT), a joint venture between Caterpillar and Trimble, develops positioning, control, and automation products for earthmoving and paving machines. The Lead Software Engineer will join the Integration and Commissioning product group, which develops and supports systems software, commissioning workflows, and infrastructure for machine-system software across grade-control machines. The role is based on-site in Dayton, Ohio, with 0–10% travel. This is a hands-on technical leadership role focused on designing, developing, and maintaining high-performance software for machine-control applications. The engineer will apply modern C++, object-oriented design, multithreading, and Linux expertise to build reliable software, contribute to architecture and design decisions, and take ownership of complex engineering problems. Alongside development work, the role provides technical guidance to engineers, leads discussions and code reviews, and promotes consistent engineering practices. The position collaborates with product managers, architects, QA, and distributed engineering teams to plan and deliver maintainable, high-quality solutions.

Requirements

  • Bachelor's degree in Computer Science, Computer Engineering, Software Engineering, or a related technical field.
  • At least 5 years of professional C++ software development experience.
  • Strong knowledge of object-oriented design and software engineering principles.
  • Experience developing and debugging multithreaded applications in Linux-based environments.
  • Experience developing complex machine-control, real-time, embedded, or highly integrated software applications.
  • Ability to design maintainable software solutions and apply strong practices in unit testing, debugging, troubleshooting, and code quality.
  • Ability to lead technical discussions, influence design decisions, mentor engineers, and resolve complex engineering problems.
  • Strong communication and collaboration skills, including the ability to work effectively with cross-functional and distributed engineering teams.

Nice To Haves

  • Experience using AI-assisted tools and methodologies to optimize software performance, streamline debugging, or accelerate development.
  • Experience in Agile software development environments and proficiency with modern version-control systems such as Git.
  • Experience with CAN, Ethernet-based application-layer protocols, and TCP/IP client-server communication.
  • Working knowledge of real-time operating systems, Linux system internals, and embedded software development.
  • Experience with C++ package-management tools such as Conan and familiarity with build and dependency-management practices.
  • Experience with Python, GoLang, or Gherkin for scripting, automation, testing, or development support.
  • Familiarity with machine-control systems, IoT concepts, or other highly integrated industrial applications.
  • Exposure to web technologies such as Angular.

Responsibilities

  • Design and implement C++ software for complex machine-control applications, using multithreading in Linux environments.
  • Deliver and support software components for commissioning workflows and machine integration within the Trimble Earthworks ecosystem.
  • Translate high-level system requirements into robust, scalable, and maintainable software solutions.
  • Apply object-oriented design, software engineering principles, and coding best practices.
  • Lead design discussions and contribute to architectural decisions for commissioning and machine-integration software.
  • Take technical ownership of complex software components and problems, lead technical reviews, and drive resolution of challenging engineering issues.
  • Mentor and guide engineers through actionable feedback and support.
  • Promote engineering practices that improve software quality, maintainability, and team productivity.
  • Ensure test coverage across unit, integration, and system levels.
  • Resolve complex system-level issues through root-cause analysis and develop sustainable solutions.
  • Drive improvements in software quality, reliability, performance, and maintainability.
  • Partner with product managers, architects, QA, and engineering teams to deliver software solutions.
  • Contribute to planning, estimation, requirements analysis, and delivery activities.
  • Coordinate with distributed teams to resolve technical dependencies, risks, and issues, and communicate status to stakeholders.

Benefits

  • Medical insurance
  • Dental insurance
  • Vision insurance
  • Life insurance
  • Disability benefits
  • Time-off plans
  • Retirement plans
  • Tax savings plans for health, dependent care, and commuter expenses (offered by most businesses)
  • Paid parental leave
  • Employee Stock Purchase Plan
  • Bonus eligibility
© 2026 Teal Labs, Inc
Privacy PolicyTerms of Service