Embedded C++ Software Engineer; Android Automotive/AOSP
Job in
Ottawa, Ontario, Canada
Listed on 2026-10-16
Listing for:
Procom
Full Time
position Listed on 2026-10-16
Job specializations:
-
Software Development
Android Developer, Software Engineer, Embedded Software Engineer, Software Testing
Job Description & How to Apply Below
Embedded C++ Software Engineer, Android Automotive, AOSPThis role is responsible for designing, developing, testing, integrating, deploying, and maintaining software applications, embedded software components, and platform services for complex automotive software systems, including Android Automotive, infotainment, digital cockpit, embedded platform services, and vehicle facing applications.
The engineer will be involved in the entire software development lifecycle, including requirements analysis, software architecture, implementation, testing, integration, deployment, troubleshooting, and post release support, collaborating with product owners, designers, architects, software developers, and test engineers to deliver high quality, reliable, and user focused vehicle experiences.
Key Responsibilities -Engage with stakeholders to understand use cases, pain points, technical requirements, and user needs, advocating for reliable and user centric software solutions.
-Solve complex software problems by designing, developing, integrating, testing, and delivering solutions using C++, Java/Kotlin, Android, embedded systems, and other appropriate technologies.
-Develop and integrate software for Android Automotive, infotainment, and digital cockpit systems, including graphical user interfaces, middleware, platform services, and vehicle facing applications.
-Develop and maintain Android platform services and applications using Java/Kotlin and C++, including customized Android services, Binder based communication, AIDL interfaces, and system level components.
-Work within the Android Open Source Project (AOSP) to implement, customize, integrate, debug, and maintain Android platform functionality and system level components.
-Design, develop, integrate, and troubleshoot automotive Hardware Abstraction Layer (HAL) components and modern Stable AIDL HAL interfaces.
-Assess software requirements and determine appropriate technology stacks, integration approaches, deployment strategies, and architectural solutions for embedded and automotive software systems.
-Create high level software architecture designs defining system structure, components, interfaces, inter process communication, data flow, and integration points.
-Own software features or components through the complete development lifecycle, from requirements and architecture through implementation, testing, release, post release support, crash analysis, and stability analysis.
-Collaborate with product owners, designers, architects, software developers, test engineers, and technical product managers to deliver high quality software across multiple release cycles.
-Define and implement software test strategies and quality practices, including unit testing, mock based testing, integration testing, static analysis, dynamic analysis, and performance validation.
-Continuously improve software performance, reliability, memory usage, concurrency, and system stability, diagnosing and resolving crashes, memory corruption, race conditions, deadlocks, and threading issues.
-Apply software engineering practices including test driven development, continuous integration, continuous delivery, code reviews, automated testing, and agile methodologies.
-Support security practices designed to safeguard customer and vehicle data, including appropriate encryption, access controls, and data protection mechanisms.
-Develop and maintain software interfaces, services, APIs, and system components as required by product architecture and the vehicle ecosystem.
-Evaluate and incorporate emerging technologies to improve software functionality, reliability, development efficiency, and overall vehicle user experience.
Skills RequiredC++17 or above, including strong knowledge of memory management, object oriented programming, polymorphism, multithreading/thread synchronization, concurrency, lambda expressions, debugging, and performance optimization.
Automotive Hardware Abstraction Layer (HAL) development, integration, troubleshooting, or implementation.
Experience with modern Stable AIDL HALs and Android 11+ platform standards, preferably in automotive or embedded environments.
Experience with Android Automotive OS, AOSP, Android platform architecture, or Android system services.
Experience developing or integrating software within AOSP, including system level components and platform customization.
Familiarity with AOSP build systems, including Android.bp/Soong and Android.mk.
Experience developing software for embedded…
To View & Apply for jobs on this site that accept applications from your location or country, tap the button below to make a Search.
(If this job is in fact in your jurisdiction, then you may be using a Proxy or VPN to access this site, and to progress further, you should change your connectivity to another mobile device or PC).
(If this job is in fact in your jurisdiction, then you may be using a Proxy or VPN to access this site, and to progress further, you should change your connectivity to another mobile device or PC).
Search for further Jobs Here:
×