Software Engineer
Automation
C++ Language
Data Processing
Desktop Support
Developer
DevOps
Embedded Software
Embedded System
Embedded Systems
End User Support
Engineering
Ethernet
Frontend
Hardware Engineering
Hardware Software Co Design
Industrial Automation
Information Technology (IT)
Integration
IT Services
Linux
Network Solutions
Operating System
Operating Systems
Programming
Programming Language
Programming Languages
Real Time Systems
Software Development
Software Engineer
Software Engineering
SQL
Systems
Tcp/ip
Technical Support
Unix Operating System
Job Description
Trimble is hiring a hands-on Lead Software Engineer to build and maintain high-performance software for machine-control within its CTCT Integration and Commissioning product group.
Responsibilities
- Design and implement C++ software for complex machine-control applications, leveraging multithreading on Linux for high-performance execution
- Deliver and support software components that enable efficient commissioning workflows and seamless machine integration across the Trimble Earthworks ecosystem
- Convert high-level system requirements into robust, scalable, and maintainable software solutions
- Use object-oriented design, software engineering principles, and coding best practices to build reliable, maintainable, high-performance systems
- Lead design discussions and influence architectural decisions for commissioning and machine-integration software
- Provide technical ownership of complex software components and problems, including technical reviews and driving resolution of challenging engineering issues
- Mentor and guide engineers through actionable feedback and technical support
- Drive adoption of engineering practices that improve software quality, maintainability, and team productivity
- Ensure comprehensive test coverage, spanning unit, integration, and system-level testing
- Resolve complex system-level issues using root-cause analysis and implement sustainable fixes
- Identify and lead improvements in quality, reliability, performance, and maintainability
- Partner cross-functionally with Product Managers, Architects, QA, and engineering teams to ship high-quality software
- Support planning, estimation, requirements analysis, and delivery activities for predictable execution
- Coordinate with distributed teams to manage technical dependencies, risks, and issues, and communicate status clearly to stakeholders
Requirements
- Bachelor’s degree in Computer Science, Computer Engineering, Software Engineering, or related technical field
- 5+ years of professional software development experience in C++, with strong knowledge of object-oriented design and software engineering principles
- Experience building 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 solutions and apply strong practices in unit testing, debugging, troubleshooting, and code quality
- Ability to lead technical discussions, influence design decisions, mentor engineers, and drive resolution of complex problems
- Strong communication and collaboration skills for cross-functional and distributed engineering work
Technologies
- C++, Linux, Python, GoLang, Gherkin
- Git, Conan, CAN, Ethernet, TCP/IP
- Angular, IoT, Real-time operating systems
Bonus Points For
- Experience using AI-assisted tools and methodologies to optimize performance, streamline debugging, and accelerate development
- Experience in Agile environments and proficiency with 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/dependency management
- Experience with Python, GoLang, 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
Benefits
- Medical, Dental, Vision
- Life, Disability
- Time off plans
- Retirement plans
- Tax savings plans for health, dependent care, and commuter expenses
- Paid Parental Leave
- Employee Stock Purchase Plan
Location and Logistics
- Dayton, OH (On-site / Office-based)
- Travel requirement: 0 - 10% (Minimal)
Compensation
- Salary range: USD 115,600 - 158,900 per year
- Pay rate type: Salary
- Bonus eligible: Yes
- Commission eligible: No
How to Apply
- Submit an online application using the Apply Now button on this posting
Application deadline: Trimble accepts applications on an ongoing basis until the position is filled.