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.
THIS IS WHAT YOU’LL DO:
-Develop and implement embedded software components into an automotive ECU application running in a FreeRTOS / SafeRTOS environment. These components include CAN, LIN, and Ethernet communication stacks; UDS, ISOTP, and other automotive-related diagnostic implementations; along with SPI and I2C communication stacks and the external peripheral device drivers that use them.
-Create requirements for OS task timing, stack usage, CPU usage, and operational sanity checks, and then implement them.
-Work with existing ECU teams to teach and enforce our coding and architectural standards.
-Develop embedded test code for testing all software components in an ECU, from HAL all the way up to the application, using either a virtualized SIL or physical HIL system.
-Gather and document software requirements from multiple stakeholders
-Support technical meetings with team members and management to discuss software architecture, feature requests, and code reviews
-Design with ISO-26262 awareness, compliance and support
THIS IS WHAT YOU’LL NEED:
-Bachelor of Science in Computer Science, Computer Engineering, Electrical Engineering, Software Engineering.
-5+ years’ experience in embedded programming in C or C++
-3+ years’ experience in using a Real Time Operating Systems (RTOS) such as FreeRTOS, SafeRTOS, Nucleus, etc.
-Experience with bus standards such as SPI, I2C, CAN, LIN, and Ethernet.
-Experience with advanced 32-bit multi-core microcontrollers
-Strong interpersonal skills.
-Proficiency in using electronic test equipment for debugging at the hardware level (oscilloscopes, logic analyzers, etc.)
-Ability to be creative/resourceful - to work in a fast-paced start-up environment.
ADDITIONAL PREFFERED SKILLS:
-Experience or exposure to ISO 26262
-Experience in MATLAB/Simulink a plus
-Experience with Infineon or NXP automotive processors.
-Experience with configuration management software (SVN, GIT, etc.)
THIS IS WHERE YOU’LL WORK
Department: Platform Software
Location: Irvine, California and Palo Alto, California
Rivian is an Equal Opportunity Employer and Prohibits Discrimination and Harassment of Any Kind: Rivian is committed to the principle of equal employment opportunity for all employees and to providing employees with a work environment free of discrimination and harassment. All employment decisions at Rivian are based on business needs, job requirements and individual qualifications, without regard to race, color, religion or belief, family or parental status, or any other status protected by the laws or regulations in the locations where we operate. Rivian will not tolerate discrimination or harassment based on any of these characteristics. Rivian encourages applicants of all ages.
We take your privacy seriously. For details please see our Candidate Privacy Notice.