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.
- Lead a team of software engineers setting high-standards for fault-tolerant systems design
- Architect and implement company-wide software solutions aimed at high-performance and extensibility
- Guide and mentor team members to innovate and take on ambitious, ambiguous, and massively distributed computing challenges
- Make pragmatic data-driven decisions, clearly articulate logical reasoning, and lead a passionate engineering team
- Dissect and reimplement manufacturing device communication protocols to achieve new integrations
- Make and commit to critical deliverables
- Ingest and rapidly become an expert in new technologies, standards, and protocols.
- Demonstrate front-line leadership with an emphasis on excellence and quality in everything performed
- Develop state of the art manufacturing systems– influence/establish the software development culture of the team.
- Establish standards and best practices for software engineering and CI/CD deployments
- Masters degree in Computer Science, Information Systems, or related engineering field
- 10+ years professional experience as a software engineer
- 5+ years of experience designing, implementing, and evolving high-performance distributed solutions
- Expert understanding of distributed data systems and trade-offs; SQL, NoSQL, Messaging Queues, and Event Sourcing
- Expert understanding of CI/CD pipeline, Git, and development workflow
- Professional experience with UNIX, Go, C/C++, Python
- Professional experience with Web communications standards; HTTP, WebSockets, GRPC, TLS
- Professional experience with Containers, Kubernetes, Edge Computing, and cloud platforms
- PhD degree in Computer Science, Information Systems, or related engineering field
- Strong system design and architecture skills, good understanding of the Actor Model, scalable-concurrent design
- Experience developing in specialized languages (Erlang, Haskell, or Rust)
- Experience integrating with HW and robotics systems over CAN, EtherCAT, or OPC
- Experience building end-to-end cloud native distributed applications across web/app, databases, backends, embedded devices, and all sorts of environments
- Experience working in a fast-paced, rapid-prototyping, and agile work environments
- Demonstrated ability to innovate and think creatively
- Strategic mindset – able to think far enough into the future while ensuring near-term execution and providing glide path into the future vision
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.
Please note that we are currently not accepting applications from third party application services.