Responsibilities Take charge of optimizing, testing, and enhancing onboard software that runs Rivian's Perception models that underpin all self-driving features 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, architecture, design, development, code review, quality assurance, and deployment of entire software engineering life cycle Coordinate with Perception model development and cross-functional teams to enable and support onboard model deployment/integration Qualifications B.S. / M.S. in Computer Science, Engineering, or a related field 8+ years of experience developing production-grade software Strong C++ programming skills Experience in automotive or robotics software development Experience working on heterogeneous systems with various types of hardware accelerators (GPU, ISP, Encoder, etc.) Experience working with libraries for hardware accelerators (CUDA, TensorRT, OpenCL, etc.) Team player with great communication skills to drive cross-functional efforts in a fast-paced development environment Passionately motivated to take ideas from R&D phase to a product Software Development life cycle experience: from requirements gathering through to implementation and maintenance Pay Disclosure Salary Range for California Based Applicants: $179,000 - $223,000 (actual compensation will be determined based on experience, location, and other factors permitted by law). Rivian may use your Candidate Personal Data for the purposes of (i) tracking interactions with our recruiting system; (ii) carrying out, analyzing and improving our application and recruitment process, including assessing you and your application and conducting employment, background and reference checks; (iii) establishing an employment relationship or entering into an employment contract with you; (iv) complying with our legal, regulatory and corporate governance obligations; (v) recordkeeping; (vi) ensuring network and information security and preventing fraud; and (vii) as otherwise required or permitted by applicable law.