About Us:
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.
Responsibilities:
Design, develop, and deploy software within hardware abstraction middleware to enable safety-critical self-driving features
Develop software working on Linux as well as real-time operating systems (QNX, FreeRTOS, etc.)
Develop software working on a distributed and heterogeneous system (multiple processors/HW engines)
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 application development and cross-functional teams to enable and support middleware integration
Qualifications:
B.S. / M.S. in Computer Science, Engineering, or a related field
8+ years of experience developing production-grade software from requirements gathering
Strong C++ programming skills
Familiarity with at least one scripting language (for example Bash, Lua, Python)
Experience in automotive or robotics software development
Experience in software development for x86_64 and ARM architectures
Experience working on heterogeneous systems with various types of hardware accelerators (GPU, ISP, Encoder, etc.)
Experience using and/or building libraries for hardware accelerators (CUDA, TensorRT, OpenCL, etc.)
Experience contributing to middleware and/or building abstraction layers
Familiar with OpenCV, OpenVX, or relevant acceleration frameworks in perception applications
Experience contributing to software tooling (for code auto-generation, test automation, fault injection, etc.)
Good 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.
Company Statements:
#
MNCJobs.co.uk will not be responsible for any payment made to a third-party. All Terms of Use are applicable.