Staff Embedded Software Engineer, Virtualization
Rivian and Volkswagen Group Technologies Vancouver, British Columbia, Canada · $137K–$182K/yr
Software Development · 1,001-5,000 employees
About the role
You will transform real-world ECU firmware into high-performance virtual devices to enable rapid prototyping and testing of vehicle features. You will also maintain user-space runtimes, implement device models, and collaborate with cross-functional teams to align abstractions and validate peripheral models.
What they look for
Requirements
The role requires 10+ years of hands-on embedded firmware experience and a degree in Computer Science, Electrical Engineering, or a related field. Candidates must possess expert-level C, strong C++, and production-quality Python skills, along with a deep understanding of RTOS fundamentals and multi-threaded programming.
Benefits
Full description
About Us
Rivian and Volkswagen Group Technologies is a joint venture between two industry leaders with a clear vision for automotive’s next chapter. From operating systems to zonal controllers to cloud and connectivity solutions, we’re addressing the challenges of electric vehicles through technology that will set the standards for software-defined vehicles around the world.
The road to the future is uncharted. By combining our expertise across connectivity, AI, security and more, we’ll map a new way forward. Working together, we’ll create a future that’s more connected, more intelligent, more sustainable for everyone.
Role Summary
As a Staff Embedded Software Engineer, you will transform real-world ECU firmware into high-performance virtual devices that run on everyday workstations and cloud servers. Your work closes the gap between hardware and software by letting entire vehicle subsystems boot, communicate, and evolve entirely in software. This virtual-first approach is disrupting traditional development cycles by enabling teams to prototype, stress-test, and ship new vehicle features in days rather than months.. You’ll collaborate with the core hardware-platform and application-software groups—including Charging, Body Controls, Infotainment, Vehicle Dynamics, and related domain teams—to craft the virtualization layers and peripheral models that make this possible, unlocking a new era of rapid iteration and insight-driven engineering across the vehicle stack.
Responsibilities
- Maintain and evolve the user-space runtime that runs production firmware on host machines. Familiarity with mapping RTOS concepts onto POSIX primitives is a plus.
- Hook new ECU firmware to existing stubbed / modeled libraries (GPIO, CAN, LIN, PWM, watchdog, ADC/DAC, etc.) so code runs unmodified on workstations and in the cloud.
- Implement functional (non-cycle-accurate) device models in C or Python when hardware isn’t available, partnering with hardware engineers to capture realistic behavior and edge cases.
- Own build scripts, tool-chains, and configurations that generate both host binaries and target MCU images, delivering fast, reproducible builds.
- Extend existing HIL Pytest suites for virtual configurations: inject faults, log traces, and validate timing or bus traffic against golden references.
- Track down discrepancies between firmware assumptions and host behavior; strong problem-solving instincts and GDB proficiency when needed.
- Work closely with middleware/OS engineers and, when required, hardware teams to align abstractions, validate new peripheral models, and unblock integration issues.
- Lead design reviews, raise code quality, and mentor peers on real-time pitfalls, clean abstraction boundaries, and maintainable C/C++/Python practices.
Qualifications
Minimum Qualifications:
- 10+ years of hands-on embedded firmware experience, including porting or deeply modifying RTOS-based systems.
- B.S., M.S., or Ph.D. in Computer Science, Electrical Engineering, or a related field.
- Expert-level C, strong C++, and production-quality Python skills.
- Deep understanding of RTOS fundamentals (tasks, ISRs, schedulers, queues, timers) and how they map onto POSIX user-space primitives.
- Proven expertise in embedded optimization and low-level debugging; comfortable with GDB and hardware/protocol analyzers.
- Solid grasp of multi-threaded and multi-core programming concepts.
- Experience developing for automotive communication networks (CAN, LIN, Ethernet) and corresponding user-space interfaces (e.g., SocketCAN).
- Hands-on ownership of Bazel (or similar) build systems and cross-compile tool-chains for heterogeneous targets.
- Strong communication skills and a track record of effective collaboration within fast-moving, multidisciplinary teams.
- Passion for shortening the idea-to-product cycle through virtualization, rapid iteration, and rigorous engineering practice.s.
Preferred Qualifications
- Prior work creating functional peripheral or IC models (QEMU, Renode, or custom stubs).
- Familiarity with safety-critical C guidelines (MISRA, CERT) and advanced automotive protocols (DoIP, SOME/IP).
- Experience correlating virtual-ECU results with physical HIL data to close fidelity gaps.
- Experience with Synopsys Virtualizer Development Kit or similar tools.
Total Rewards
We build the exceptional — and we believe the people doing that work should be rewarded accordingly. In addition to a competitive base salary, full-time positions may be is eligible to participate in our annual company performance bonus program.
Payments are discretionary and not guaranteed; actual amounts depend on company results and the terms of the plan in effect, and require active employment at the time of payout. This role is also eligible for equity in the form of Restricted Stock Units (RSUs), subject to board approval and the terms of our equity incentive plans, including applicable vesting requirements.
In addition to our compensation programs, we invest in our people with a comprehensive benefits package designed to support the health, wellbeing, and financial future for full-time employees — including health coverage, retirement savings, time off, and family planning programs. Offerings vary by country. Learn more about our global benefit programs.
External candidates can apply for this role through the Rivian and Volkswagen Group Technologies careers site (https://rivianvw.tech/#careers). If you are a current employee, please apply through our internal job board.
Equal Opportunity
Rivian and Volkswagen Group Technologies is committed to creating a diverse environment and is proud to be an equal opportunity employer. All qualified applicants will receive consideration for employment without regard to race, color, religion, national origin, ancestry, sex, sexual orientation, gender, gender expression, gender identity, genetic information or characteristics, physical or mental disability, marital/domestic partner status, age, military/veteran status, medical condition, or any other characteristic protected by law. We are also committed to ensuring compliance with all applicable fair employment practice laws regarding citizenship and immigration status.
Rivian and Volkswagen Group Technologies is committed to ensuring that our hiring process is accessible for persons with disabilities. If you have a disability or limitation, such as those covered by the Americans with Disabilities Act, that requires accommodations to assist you in the search and application process, please email us at candidateaccommodations@rivian.com.
Candidate Data Privacy
Rivian and Volkswagen Group Technologies” may collect, use and disclose your personal information or personal data (within the meaning of the applicable data protection laws) when you apply for employment and/or participate in our recruitment processes (“Candidate Personal Data”). This data includes contact, demographic, communications, educational, professional, employment, social media/website, network/device, recruiting system usage/interaction, security and preference information. Rivian and Volkswagen Group Technologies may use your Candidate Personal Data for the purposes of (i) tracking interactions with our recruiting system; (ii) carrying out, analyzing and improving our application and recruitment process, including assessing you and your application and conducting employment, background and reference checks; (iii) establishing an employment relationship or entering into an employment contract with you; (iv) complying with our legal, regulatory and corporate governance obligations; (v) record keeping; (vi) ensuring network and information security and preventing fraud; and (vii) as otherwise required or permitted by applicable law.
Rivian and Volkswagen Group Technologies may share your Candidate Personal Data with (i) internal personnel who have a need to know such information in order to perform their duties, including individuals on our People Team, Finance, Legal, and the team(s) with the position(s) for which you are applying; (ii) Rivian and Volkswagen Group Technologies affiliates; and (iii) Rivian and Volkswagen Group Technologies’ service providers, including providers of background checks, staffing services, and cloud services.
Rivian and Volkswagen Group Technologies may transfer or store internationally your Candidate Personal Data, including to or in the United States, Canada, and the European Union and in the cloud, and this data may be subject to the laws and accessible to the courts, law enforcement and national security authorities of such jurisdictions.
If you provide a mobile telephone number as part of your application or during the recruitment process, Rivian and Volkswagen Group Technologies may use that number to contact you via SMS text message for recruitment-related purposes, including scheduling, logistics, and status updates. Message and data rates may apply. You may opt out of SMS communications at any time by replying STOP to any text message you receive from us. Consent to receive SMS messages is not a condition of applying for or being considered for employment.
Please see our Candidate Data Privacy Notice (English) and Candidate Data Privacy Notice (Serbian) for more information.
--
Please note this job posting represents an open, active vacancy. Additionally, we are not currently accepting applications from third party application services.
Similar roles
-
Senior Embedded Software Engineer
SAIC Panama City Beach, Florida, United States
-
Junior Embedded Software Engineer
SAIC Panama City Beach, Florida, United States
-
Embedded Software & Systems Consultant (m/w/d)
INVENSITY Stellenportal Wiesbaden, Hesse, Germany · €55K–€68K/yr
-
Senior Embedded Software Engineer
Fortive Changning District, Shanghai, China
-
Software Engineer C++ (Embedded Systems)
Capgemini Milan, Lombardy, Italy · €35K–€57K/yr
- Embedded Software Developer