Staff Software Engineer, Middleware, Autonomy

Staff Software Engineer, Middleware, Autonomy

Full-Time 80000 - 100000 £ / year (est.) No working from home possible
Rivian Automotive

At a Glance

  • Tasks: Design and develop software for self-driving features in a cutting-edge automotive environment.
  • Company: Join Rivian, a leader in electric adventure vehicles with a mission to protect the outdoors.
  • Benefits: Competitive salary, inclusive culture, and opportunities for professional growth.
  • Other info: Dynamic, fast-paced environment with a focus on collaboration and impactful projects.
  • Why this job: Be part of a team that challenges the status quo and drives innovation in autonomous technology.
  • Qualifications: 8+ years in software development, strong C++ skills, and experience in automotive or robotics.

The predicted salary is between 80000 - 100000 £ per year.

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.

Staff Software Engineer, Middleware, Autonomy employer: Rivian Automotive

Rivian is an exceptional employer that fosters a culture of innovation and adventure, making it an ideal place for passionate individuals to thrive. With a commitment to employee growth, Rivian offers opportunities to work on cutting-edge technology in a collaborative environment, all while being part of a mission to protect the outdoors for future generations. Located in a vibrant area, employees enjoy a dynamic work-life balance and the chance to contribute to meaningful projects that redefine the automotive industry.

Rivian Automotive

Contact Details:

Rivian Automotive Recruitment Team

StudySmarter Expert Advice🤫

We think this is how you could land Staff Software Engineer, Middleware, Autonomy

Join Local Tech Meetups

Get out there and mingle with fellow developers by joining local tech meetups. It’s a fantastic way to meet people who might be working at Rivian Automotive or know someone who does. Plus, you can pick up some trendy tech skills and trends while you're at it!

Contribute to Open Source Projects

Show off your coding chops by jumping into open-source projects. Not only does this give you practical experience, but it also gets you noticed in the dev community. You'll create a killer portfolio that speaks volumes about your skills to Rivian Automotive.

Tap into Online Developer Communities

Don’t underestimate the power of online developer communities like GitHub, Stack Overflow, and even Reddit. Participate in discussions, share your projects, and build your visibility. We can often find opportunities through these channels that can lead to a full-time gig at companies like Rivian Automotive.

Explore Job Boards Specifically for Tech Roles

Keep your eyes peeled on job boards that focus on tech roles. Sites like TechCareers or Stack Overflow Jobs can often have listings for companies like Rivian Automotive that might not show up on broader job sites. Make it a habit to check these regularly, and don’t hesitate to apply directly through our website!

We think you need these skills to ace Staff Software Engineer, Middleware, Autonomy

C++ Programming
Scripting Languages (Bash, Lua, Python)
Software Development for Automotive or Robotics
Experience with x86_64 and ARM Architectures
Heterogeneous Systems Development
Hardware Accelerators (GPU, ISP, Encoder)
CUDA, TensorRT, OpenCL

Some tips for your application 🫡

Show off your coding skills:When applying for a software engineering role, it's super important to showcase your coding skills. Make sure your CV includes your tech stack, any relevant programming languages you’re comfortable with, and examples of projects you've worked on. If you have a GitHub profile, link it up! We love to see code in action.

Tailor your portfolio:For a full-time role, we’d expect to see some solid examples of your work in your portfolio. Make sure to include at least two or three projects that highlight your problem-solving skills and your ability to work with different technologies. Focus on the projects that are most relevant to the position at Rivian Automotive.

Craft a killer cover letter:Your cover letter is your chance to stand out—make it personal! Explain why you want to work at Rivian Automotive and how your skills align with the role. Show us your passion for software development. We dig enthusiastic candidates who understand the value of collaboration and continuous learning!

Be clear and concise:When it comes to writing your CV and cover letter, clarity is key. Avoid jargon that could confuse us and stick to simple, direct language. Highlight your achievements with quantifiable results where possible, and keep everything easy to read. A well-organised application goes a long way!

How to prepare for a job interview at Rivian Automotive

Brush Up on Your Coding Skills

For a full-time software engineering role, it's crucial that we stay sharp with our coding abilities. Expect technical questions that might involve solving problems on the spot or discussing algorithms. Practise on platforms like LeetCode or HackerRank to get comfortable with the types of questions that often come up.

Know Your Tools and Frameworks

Make sure we’re well-acquainted with the tools and technologies listed in the job description. Familiarise ourselves with any specific frameworks or programming languages mentioned. If Rivian Automotive uses React or Node.js, for instance, be ready to discuss how we’ve used them in previous projects or coursework.

Showcase Your Projects

Bring along a portfolio that highlights our best work. This could be code samples, GitHub repositories, or any side projects we’ve built. Make sure we can talk through our thought process for each project, especially the challenges we faced and how we solved them—this shows our problem-solving skills in action.

Prepare for Behavioural Questions

While technical skills are key, full-time positions also require cultural fit. Be ready to discuss our previous experiences and how we handle teamwork, conflict, and deadlines. Brush up on the STAR method—Situation, Task, Action, Result—to clearly articulate our past experiences when discussing how we've contributed to a team.