Senior Embedded Software Engineer
Job Description
Capgemini
At Capgemini, the world leader in engineering services, we bring together a global team of engineers, scientists, and architects to help the world’s most innovative companies unleash their potential. From autonomous vehicles, Electric vehicles to life-saving robots, our digital and software technology experts think outside the box as they provide unique R&D and engineering services across all industries. Join us for a career full of opportunities. Where you can make a difference. Where no two days are the same.
Job Description:
Define, build and implement embedded software architectures for automotive high-performance compute platforms. Aiming at structured, modular, scalable and robust BSP, virtualization and in-vehicle networking layers across Linux, Android and QNX, with strong alignment to OEM specifications and automotive real-time, startup and safety constraints.
Grade-Specific Responsibilities:
- Own end-to-end BSP bring-up and platform software delivery for automotive cockpit/IVI programs on Qualcomm automotive SoCs.
- Analyze OEM requirement specifications: review incoming requirements for completeness and consistency, identify ambiguities and contradictions, raise structured clarification questions to the customer, and drive them to closure.
- Break down agreed requirements into software design, implementation tasks, and test criteria; maintain traceability from OEM requirement ID through to delivered feature.
- Design, implement, and debug virtualization solutions on the Gunyah hypervisor / qcrosvm , guest VM provisioning, device tree configuration, VirtIO backends, and device passthrough.
- Own the in-vehicle networking stack: automotive Ethernet, VLAN segmentation, IPv4/IPv6 addressing and routing, gPTP time synchronization, TC10 sleep/wake, and SOME/IP service communication.
- Collaborate with system, hardware, validation, and OEM/Tier-1 counterparts to align architecture and interface decisions.
- Root-cause cross-domain defects spanning hypervisor, kernel drivers, switch/PHY silicon, and guest OS , across Linux, Android, and QNX in the same stack.
- Support implementation guidelines, review driver and platform design choices, and mentor junior engineers.
- Ensure compliance with automotive constraints such as startup KPIs, real-time behavior, functional safety (ASIL classification), and inter-VM isolation and security.
- Represent the team in customer-facing technical reviews and OEM-level presentations.
Job Description - Grade Specific
Required Skills and Competencies:
- Strong Linux BSP background: kernel and device driver development, device tree, bootloaders, Yocto and AOSP build systems.
- Vehicle networking depth: automotive Ethernet (100/1000BASE-T1), managed switch and PHY configuration, VLAN and multicast routing, IPv4/IPv6 addressing (static and dynamic), packet forwarding and routing behavior, network namespaces, TSN/AVB and credit-based shaping, gPTP synchronization, TC10, SOME/IP, and DoIP/diagnostics communication.
- Requirement analysis capability: proven experience reviewing OEM requirement documents (RFI/RFQ), spotting gaps and conflicting constraints, and formulating precise technical clarification questions rather than assuming intent.
- Proven hands-on experience with embedded virtualization - Gunyah, QNX Hypervisor, KVM, or crosvm , including VirtIO and device passthrough concepts.
- Multi-OS experience: Linux, Android, QNX, and RTOS environments.
- Production-quality C and C++; Python and bash for tooling and automation.
- Practical low-level debug skills: JTAG, logic analyzer/oscilloscope, serial console triage, and packet capture analysis (Wireshark, tcpdump).
- Experience working in cross-functional teams (Sys, HW, SW) and interfacing directly with customers.
Cairo, EG