What are the responsibilities and job description for the Senior Software Engineer, Embedded position at CARIAD, Inc.?
We are CARIAD , an automotive software development team with the Volkswagen Group. Our mission is to make the automotive experience safer, more sustainable, more comfortable, more digital, and more fun. To achieve that we are building the leading tech stack for the automotive industry and creating a unified software platform for over 10 million new vehicles per year. We’re looking for talented, digital minds like you to help us create code that moves the world. Together with you, we’ll build outstanding digital experiences and products for all Volkswagen Group brands that will transform mobility. Join us as we shape the future of the car and everyone around it.
Role Summary:
The Senior Software Engineer, Embedded role will contribute to key areas of the software design efforts for the future of CARIAD’s Infotainment software stack. They will be a key driver in envisioning, designing, and executing the next generation of Infotainment embedded software.
Role Responsibilities:
Salary range is dependent on factors such as geographical differentials, credentials or certifications, industry-based experience, qualification and training. In the city of Mountain View, California, the salary range for this position is $145,000 - 202,000.
CARIAD, Inc. provides performance based merits and annual bonus along with a competitive benefits package. Benefits include medical, dental, vision, 401k with employer match and defined contribution plan, short and long term disability, basic life and AD&D insurance, employee assistance program, tuition reimbursement and student loan repayment plans, maternity and non-primary caregiver leave, adoption assistance, employee referral program and vacation and paid holidays. We also offer a unique vehicle lease program that covers registration and insurance fees.
CARIAD is an Equal Opportunity Employer. We welcome and encourage applicants from all backgrounds, and do not discriminate based on race, sex, age, disability, sexual orientation, national origin, religion, color, gender identity/expression, marital status, veteran status, or any other characteristics protected by applicable laws.
Role Summary:
The Senior Software Engineer, Embedded role will contribute to key areas of the software design efforts for the future of CARIAD’s Infotainment software stack. They will be a key driver in envisioning, designing, and executing the next generation of Infotainment embedded software.
Role Responsibilities:
- Embedded System Development
- Design, develop, test, release and maintain embedded device drivers for CARIAD’s Linux automotive platform.
- Deliver high quality, testable, and peer reviewed software components.
- Identify bottlenecks and optimize system performance through tuning of priorities, code complexity reduction, and system-level optimizations.
- System Integration
- Integrating Board-Support-Package with the hardware (board and SoC) and the rest of infotainment software.
- Responsible for Integration testing, managing large test environments, and ensuring system reliability at scale.
- Integrating advanced software components into the overall infotainment system, ensuring compatibility with cross-functional and third-party systems.
- Collaborating with hardware engineers, vendors, partners and other software teams to ensure seamless integration between software and hardware components
- Compliance and Standards
- Ensuring the software complies with automotive industry standards and regulations (e.g., ISO 26262).
- Staying up-to-date with emerging technologies and industry trends.
- Implementing best practices for software development and quality assurance.
- Testing and Quality Assurance
- Developing and executing test plans to ensure software quality and reliability
- Conducting unit testing, integration testing and system testing.
- Addressing bugs and performance issues identified during testing.
- Collaboration and Communication
- Collaborate effectively with cross-functional teams including software, hardware, and quality assurance teams.
- Communicate project status, technical challenges, and solutions in a clear and concise manner.
- Documentation
- Create and maintain comprehensive technical documentation including design specification, test reports, bug description, root cause and solution description, user guides, and release notes.
- Analytic and debugging skills
- Effective written and verbal communication skills.
- Ability to actively participate in technical meetings and provide feedback.
- Collaborate and work with multiple teams across geographies and time zones.
- Excellent problem-solving and debugging skills.
- Ability to work independently and in a team environment.
- Strong communication and interpersonal skills.
- Proficiency in C/C programming languages.
- Knowledge in Rust programming language.
- Knowledge of scripting languages such as Python, Bash, or Perl.
- Experience using test automation in a Test-Driven Development (TDD) process is a plus
- Experience working with cross functional teams (product teams, system and validation teams, hardware teams).
- Experience developing software products using Agile process.
- Experience with Generative AI or LLMs to enhance software development efficiency and quality
- Experience implementing device drivers for standard I/O and high-speed interfaces on a complex SoC (UART, SPI, I2C, USB, I2S, PCIe)
- Desired specialized skills based on expertise:
- Video/audio codec implementation
- Strong image processing knowledge
- Picture quality improvement for embedded devices
- Firmware development for DSP
- Test automation in TDD process
- Device driver implementation for HDMI, DP, DSI, SER/DES interfaces
- Performance optimization for GPU/DPU drivers
- Porting 3D gaming engines (Unreal, Unity3D) to Linux for embedded products
- In-depth knowledge of Linux display and audio pipelines
- TA development with ARM TrustZone
- Implementation of cryptographic algorithms for encryption, decryption, authentication
- Yocto Linux software build expertise
- Graphic and video/audio pipelines with hypervisor and embedded Linux
- Calls, (virtual) meetings & workshops (overlapping with German/US business hours as needed) to align with leadership, development teams and partners.
- Occasional international and domestic travel to provide on-site support and planning/integration workshops with our internal and external stakeholders.
- 6 years in developing embedded software
- 3 years in embedded Linux drivers or system software
- 3 years in embedded software development with RTOS
- Bachelor's degree in computer/electrical engineering, Computer Science, or related field.
- Master’s degree or PhD in Computer/Electrical Engineering, Computer Science, or related field.
Salary range is dependent on factors such as geographical differentials, credentials or certifications, industry-based experience, qualification and training. In the city of Mountain View, California, the salary range for this position is $145,000 - 202,000.
CARIAD, Inc. provides performance based merits and annual bonus along with a competitive benefits package. Benefits include medical, dental, vision, 401k with employer match and defined contribution plan, short and long term disability, basic life and AD&D insurance, employee assistance program, tuition reimbursement and student loan repayment plans, maternity and non-primary caregiver leave, adoption assistance, employee referral program and vacation and paid holidays. We also offer a unique vehicle lease program that covers registration and insurance fees.
CARIAD is an Equal Opportunity Employer. We welcome and encourage applicants from all backgrounds, and do not discriminate based on race, sex, age, disability, sexual orientation, national origin, religion, color, gender identity/expression, marital status, veteran status, or any other characteristics protected by applicable laws.
Salary : $145,000 - $202,000