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.
We operate development centers in Plymouth, Michigan; Southern California (Irvine, Carson & LA); Silicon Valley (San Jose and Palo Alto); Vancouver, British Columbia; and Surrey, England; as well as a manufacturing facility in Normal, Illinois.
- Design, develop and deploy Rivian autonomous driving operation system software
- Develop software working on Linux as well as real-time operation systems (QNX, FreeRTOS, etc.)
- Develop software working on a distributed and heterogeneous system (across multiple processors/ECUs)
- Develop necessary tools to support development, debugging and testing
- Assist in software-design and code reviews while assisting other developers on technical issues, design choices and decision making
- Analysis of requirements, the architecture, design, development, code review, quality assurance and deployment of entire software engineering life cycle
- Work closely with other development and cross-functional team members
- B.S. in Computer Science, Software Engineering, or a related field
- Strong C/C++ programming skills
- Experience in automotive or robotics software development
- Experience in ROS/ROS2 or similar software development
- Experience in working with DDS middleware
- Experience in software development for ARM SoCs
- Familiar with embedded software development environment
- Familiar with software development on Linux, RTOS(QNX, FreeRTOS, etc.) and windows platforms
- Working knowledge of automotive communication protocols (CAN, Ethernet, etc.)
- Test automation tool selection and execution experience
- Ability to work in a fast-paced development environment
- Good team player with great communication skills
- Passionately motivated to take ideas from R&D phase to a product
- Software development experience on microcontrollers is a plus
- SIL/HIL testing
- Scripting languages (for example PERL, Python)
- Software Development life cycle experience, from requirements gathering through to implementation and maintenance.
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 email@example.com.
We take your privacy seriously. For details please see our Candidate Privacy Notice.