Staff Embedded Software Engineer
Job Description
About Rivian
Rivian is on a mission to keep the world adventurous forever. This goes for the emissions-free Electric Adventure Vehicles we build, and the curious, courageous souls we seek to attract.
As a company, we constantly challenge what’s possible, never simply accepting what has always been done. We reframe old problems, seek new solutions and operate comfortably in areas that are unknown. Our backgrounds are diverse, but our team shares a love of the outdoors and a desire to protect it for future generations.
Role Summary
In this position, you will be an individual contributor developing embedded software for Rivian’s autonomy driving platform. You will architect, design, develop, and test platform software to support Rivian’s cutting-edge autonomy stack. You will be a tech lead to a cross-functional team doing feature development and oversee features from concept to deployment. Focus areas will include application development, driver development, hardware bring-up, and simulation.
Responsibilities
- Design, implement, and maintain embedded software for Rivian's electric vehicles, ensuring high performance and reliability.
- Develop low-level software components, drivers, and frameworks on microcontroller and high compute embedded platforms.
- Lead feature development involving cross-functional teams through multiple phases of the SDLC.
- Diagnose and resolve hardware/software issues and identify and implement optimizations to enhance system performance.
- Participate in and conduct code reviews to maintain code quality, adherence to coding standards, and knowledge sharing within the team.
- Create and maintain comprehensive documentation for software designs, interfaces, and testing procedures.
- Develop and execute test plans to validate software functionality, safety, and reliability in compliance with automotive standards.
- Keep up with industry trends, emerging technologies, and best practices to contribute to continuous improvement within the team.
Qualifications
- Bachelor's or Master's degree in Electrical Engineering, Computer Engineering, Computer Science, or a related field.
- 8+ years of related work experience.
- Experience programming with C and C++ languages.
- Experience with embedded software development and system-level integration.
- Experience leading a team of engineers through technical development.
- Experience developing, profiling, and optimizing code running on a multi-core embedded Linux target.
- Experience working with embedded development tools and debuggers.
- Experience working with version control systems (e.g., Git) and issue tracking tools.
- Strong understanding of modern SoC architectures, operating system fundamentals, hardware/software interfaces, and abstractions.
- Strong communication, debugging, problem-solving, and teamwork abilities.
- Experience with Linux device drivers for hardware blocks such as Camera Serial Interface (CSI), Image Signal Processor (ISP), Ethernet, I2C, SPI, UART, UFS, or PCIe is a plus.
- Experience with automotive communication protocols such as CAN, UDS, and DOIP is a plus.
- Experience with any RTOS (e.g., FreeRTOS, QNX, GreenHills, etc.) is a plus.
Equal Opportunity
Rivian is an equal opportunity employer and complies with all applicable federal, state, and local fair employment practices laws. 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.
Rivian 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.