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.
- Collaborate with cross functional teams such as User Experience, Vehicle Controls, Telematics, and System Architecture to agree on feature requirements and architecture.
- Create, analyze, and review software module designs to realize desired communication services to support Infotainment features and system capabilities.
- Implement software aligned with the overall system design and software development process standards.
- Create unit tests and debug issues arising from testing and validation activities.
- Measure, analyze, and optimize software performance around key performance indicators.
- Bachelor’s Degree or greater in Computer Science, Software Engineering, Applied Mathematics, Electrical Engineering, Computer Engineering, or related field
- 8+ years’ experience with developing software from given requirements into a functional, efficient, and tested implementation.
- High proficiency with modern C/C++. Additional proficiency with Java or Kotlin helpful. Also familiarity with associated software development tools, such as IDE’s, source code management, static analysis, and automated builds.
- Extensive experience with POSIX-based embedded systems, one or more of Android, Linux, QNX.
- Solid foundational knowledge of inter-process communications (IPC) and remote procedure calls (RPC). Proficiency with multiple communications paradigms: client-server, peer-to-peer, and publish/subscribe.
- Extensive experience with IP-based communications and protocols, for example: HTTP, TLS, REST, Websockets, JSON, XML, Protobufs, Flatbuffers, RTP, RTSP, HLS.
- Experience working with diverse engineering teams.
- Desire to work in a fast-paced, dynamic, highly collaborative environment.
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.