C

Caterpillar

Makes heavy machinery, engines and gas turbines

C++ Architect

Embedded EngineeringConfirmed live in the last 24 hours
Full-timeNo salary listed

About the Job

Requirements

  • A degree in Electronic/Electrical Engineering or a Computer Science curriculum is required.
  • More than 10 years of relevant industry experience developing C++ applications.
  • Knowledge of real-time system architecture and multi-system integration across sensing, compute, and actuation domains.
  • Knowledge of artificial intelligence and sensor fusion concepts and methods, including perception and prediction algorithms for autonomous systems.
  • Knowledge of software development life cycle methodologies and the ability to deliver, validate, and manage high-quality software products.
  • Knowledge of programming languages, tools, and Linux-based development, with the ability to design, implement, debug, and maintain software for embedded and distributed systems.
  • Knowledge of structured problem-solving methods and advanced troubleshooting techniques across organizational, hardware, software, and system domains.

Responsibilities

  • Design safety-critical features end-to-end, translating requirements into technical designs for sensor data processing, object detection, threat assessment, and automated safety responses.
  • Guide teams on real-time embedded software design practices, ensuring components are modular, testable, and maintainable.
  • Document architecture specifications, software design descriptions, verification plans, test cases, operating procedures, and safety procedures.
  • Support developers in building and validating detection and decision-making algorithms across multiple vehicle and machine configurations.
  • Use appropriate tools to debug, test, and maintain software and hardware systems, and lead verification and validation activities.
  • Lead design and code reviews focused on safety, correctness, numerical stability, and handling degraded or missing data.
  • Design and validate end-to-end data flows that meet real-time latency and throughput requirements.
  • Integrate software across CAN, Ethernet, and middleware in multi-ECU architectures.
  • Diagnose timing, synchronization, and data-consistency issues in distributed systems.
  • Define interface contracts, including schemas, timing budgets, and failure modes.
  • Evaluate system-level trade-offs between compute load, bandwidth, and safety margins.
  • Design and implement sensor fusion pipelines integrating radar, camera, and lidar data into a unified world model.
  • Develop and tune object detection, tracking, and prediction algorithms for real-time autonomous decision-making in safety-critical contexts.
  • Evaluate trade-offs between algorithmic accuracy, latency, computational cost, and system-level safety constraints on embedded platforms.
  • Apply probabilistic and statistical techniques to noisy sensor data, accounting for uncertainty and failure modes.
  • Support validation of perception and prediction systems against ground truth, field data, and applicable standards or guidelines.
  • Mentor others on integrating AI/ML components into safety-critical software architectures.
  • Apply software development life cycle methodologies with testing embedded across all phases.
  • Convert requirements into robust, reviewable designs with explicit verification and testability considerations.
  • Lead activities across software development life cycle phases, including design, implementation, integration, testing, validation, and release.
  • Define and execute test strategies, plans, and cases to validate functionality, error handling, reliability, and failure modes.
  • Evaluate and consult on effective software development life cycle and testing practices using iterative and agile approaches.
  • Design and develop software on Linux platforms, including embedded and system-level components.
  • Apply modern C++ (C++11/14/17), including concurrency, RAII, smart pointers, and memory-safe patterns, in Linux environments.
  • Use Linux debugging and profiling tools to diagnose functional and performance issues.
  • Oversee large development efforts aligned with system and architectural design.
  • Evaluate programming trade-offs across performance, memory, safety, and maintainability.
  • Coach junior engineers on programming best practices and Linux workflows.
  • Lead structured problem resolution and root-cause analysis for complex, high-impact issues.
  • Analyze complex technical problems and apply appropriate diagnostic techniques based on context and impact.
  • Resolve critical or wide-impact hardware, software, and communication failures.
  • Drive urgency, prioritization, and decision-making based on business impact.
  • Direct cross-team and multi-vendor issue resolution and coach others on advanced troubleshooting techniques.

About the Company

Caterpillar

Makes heavy machinery, engines and gas turbines

Caterpillar makes construction and mining machines, diesel and natural gas engines, industrial gas turbines and locomotives for contractors, mines, energy companies and data center builders. It is the world's largest maker of construction and mining equipment, and its yellow Cat bulldozers and excavators work in nearly every country. Customers buy or rent machines through independent Cat dealers, while its engines and turbines generate electricity and push natural gas through pipelines. Caterpillar earns money from equipment sales and from the parts and repairs that dealers supply over a machine's working life. It was formed in 1925 when California's Holt and Best tractor companies merged, and it is based in Irving, Texas.

Company size
10,001+
Company stage
IPO
Headquarters
Irving, TX
Founded
1925

Recently Posted Jobs

Explore more opportunities at Caterpillar

See more jobs