C++ Architect
Caterpillar•15h ago
Bangalore, KarnatakaOnsiteFull-timeSenior Level9+ yrs exp
- Career Area: Engineering Job Description: Your Work Shapes the World at Caterpillar Inc. When you join Caterpillar, you're joining a global team who cares not just about the work we do – but also about each other. We are the makers, problem solvers
- future world builders who are creating stronger, more sustainable communities. We don't just talk about progress and innovation here – we make it happen, with our customers
- we work and live. Together, we are building a better world, so we can all enjoy living in it. Role Definition Responsibilities
- Designing safety critical features end to end — translating requirements into technical designs for sensor data processing, object detection, threat assessment, and automated safety responses.
- Guiding teams on real time embedded software design practices, ensuring components are modular, testable, and maintainable.
- Documenting architecture specifications, software design descriptions, verification plans, test cases, operating procedures, and safety procedures.
- Supporting developers in building and validating detection and decision making algorithms across multiple vehicle and machine configurations.
- Utilizing appropriate tools to debug, test, and maintain software and hardware systems; leading verification and validation activities.
- Lead design and code reviews with focus on safety, correctness, numerical stability, and handling of degraded or missing data. Degree Requirement
- Requires a degree in Electronic/Electrical Engineering or Computer Science curriculum.
- More than 9 years of relevant industry experience in developing C++ applications Skill Descriptors Real Time Systems Integration Knowledge of real time system architecture and multi system integration across sensing, compute
- actuation domains. Level: Extensive Experience
- Designs and validates end to end data flows meeting real time latency and throughput requirements.
- Integrates software across CAN, Ethernet, and middleware in multi ECU architectures.
- Diagnoses timing, synchronization, and data consistency issues in distributed systems.
- Defines interface contracts including schemas, timing budgets, and failure modes.
- Evaluates system level trade offs between compute load, bandwidth, and safety margins.
- Coaches others on integration testing using HIL and SIL approaches. Artificial Intelligence & Sensor Fusion Knowledge of AI and sensor fusion concepts and methods, with awareness of applicable industry standards and safety expectations
- ability to develop and apply perception and prediction algorithms for autonomous systems. Level: Extensive Experience
- Designs and implements sensor fusion pipelines integrating radar, camera, and lidar data into a unified world model.
- Develops and tunes object detection, tracking, and prediction algorithms for real time autonomous decision making in safety critical contexts.
- Evaluates trade offs between algorithmic accuracy, latency, computational cost, and system level safety constraints on embedded platforms.
- Applies probabilistic and statistical techniques to noisy sensor data, accounting for uncertainty and failure modes.
- Supports validation of perception and prediction systems against ground truth, field data, and applicable standards or guidelines.
- Mentors others on integrating AI/ML components into safety critical software architectures. Software Development Life Cycle (SDLC) Knowledge of SDLC methodologies with ability to deliver, validate
- manage high quality software products. Level: Extensive Experience
- Applies multiple vendor provided or in house SDLC methodologies with testing embedded across all phases.
- Converts requirements into robust, reviewable designs with explicit verification and testability considerations.
- Leads activities across all SDLC phases including design, implementation, integration, testing, validation, and release.
- Defines and executes test strategies, plans, and cases to validate functionality, error handling, reliability, and failure modes.
- Evaluates and consults on effective SDLC and testing practices using iterative and agile approaches. Programming Knowledge of programming languages, tools, and Linux based development
- ability to design, implement, debug, and maintain software for embedded and distributed systems. Level: Extensive Experience
- Designs and develops software on Linux platforms, including embedded and system level components.
- Applies modern C++ (C++11/14/17), including concurrency, RAII, smart pointers, and memory safe patterns, in Linux environments.
- Uses Linux debugging and profiling tools to diagnose functional and performance issues.
- Oversees large development efforts aligned with system and architectural design.
- Evaluates programming trade offs across performance, memory, safety, and maintainability.
- Coaches junior engineers on programming best practices and Linux workflows. Problem Solving & Technical Troubleshooting Knowledge of structured problem solving methods and advanced troubleshooting techniques across organizational, hardware, software, and system domains
- ability to resolve high impact issues. Level: Extensive Experience
- Leads structured problem resolution and root cause analysis for complex, high impact issues.
- Analyzes complex technical problems and applies appropriate diagnostic techniques based on context and impact.
- Resolves critical or wide impact hardware, software, and communication failures.
- Drives urgency, prioritization, and decision making based on business impact.
- Directs cross team and multi vendor issue resolution and coaches others on advanced troubleshooting techniques. This position requires working onsite five days a week. Relocation is available for this position. Posting Dates: June 27, 2026 - June 28, 2026 Caterpillar is an Equal Opportunity Employer. Qualified applicants of any age are encouraged to apply Not ready to apply? Join our Talent Community .
Required skills
C++Real Time SystemsArtificial IntelligenceSensor FusionSoftware Development Life CycleLinux