Staff Software Engineer - OS, Robot Software

Wayve

$210K — $290K *
Consumer Technology
Less than 5 years of experience
Job Overview by Ladders

Qualifications

  • 5-7 years of experience in software development focusing on high-performance embedded Linux systems using C and C++.
  • Proficient in embedded Linux concepts, including kernel, device trees, and build systems like Yocto.
  • Strong debugging skills for identifying performance issues across system components.
  • Familiar with IPC mechanisms and optimizing middleware for robotics applications, particularly using frameworks such as ROS.
  • Desirable experience with robotics/automotive platforms like Nvidia Jetson or Drive.

Responsibilities

  • Own the development and maintenance of Linux kernel and device drivers.
  • Collaborate with cross-functional stakeholders to design effective software solutions.
  • Build and deliver high-quality software in C++ for autonomous vehicle applications.
  • Develop robust, fault-tolerant software with comprehensive diagnostics for operational efficiency.
  • Lead initiatives to foster best engineering practices within the team.

Benefits

  • Full-time role with a hybrid work model.
  • Competitive equity package for eligible candidates.
Full Job Description
The role

The Robot Software team is responsible for the software that runs on our internal fleet of vehicles to enable autonomous driving and collect data for training new driving models. You will join a motivated and talented team of engineers to deliver a reliable, stable and flexible software stack to support on-road experimentation by our model developers and scientists. Your work will enable these teams to iterate quickly and gather the data they need to improve our autonomous driving capabilities and support new product features, which is critical to the success of Wayve's mission.

The OS team within Robot Software are the curators of Wayve's bespoke Linux distribution, which is installed across our ever-expanding development fleet. The team works closely with various groups across Wayve, including other parts of Robot Software, the hardware and supply chain teams, and our field engineering and reliability engineering teams. The team's responsibilities include developing and maintaining our Linux distribution using Yocto, creating and updating Linux kernel drivers for new hardware sensors and peripherals, and hardening our development fleet against all forms of cyber attack.

Key responsibilities:
  • Expertise in Linux: Own the creation and maintenance of Linux kernel and device drivers.
  • Collaborate with technical and business stakeholders: Work with Product, Project, and Engineering management to advise and build the right solution
  • Software Development: Build and deliver software in C++ with high quality and reliability. Create software which is observable and debuggable when running on a device 2000 km away and with limited connectivity.
  • Fault Tolerance and Diagnostics: Create robust, fault-tolerant software solutions with comprehensive system diagnostics to enable us to quickly and efficiently resolve any issues preventing our deployed fleet from operating at maximum capacity.
  • Drive a strong engineering culture: Lead by example as you demonstrate best practices for: testing, documentation, ease-of-use, technical (and non-technical) tooling, mentorship, and collaboration.
About you

In order to set you up for success as a Staff Software Engineer at Wayve, we're looking for the following skills and experience.

Essential
  • Software Development Skills: Proficiency developing high-performance embedded Linux systems software in C and C++. Demonstrated ability to manage the complete software development lifecycle from ideation through delivery & optimization.
  • Linux Expertise: Familiarity with embedded Linux (kernel, device tree), build systems (Yocto), boot sequence, secured boot and user space application software development.
  • Debugging Skills: Ability to delve deep into performance issues, stack traces, core dumps, slow disk writes, high system load, memory bottlenecks, external device bottlenecks, and threading issues.
  • IPC Middleware Knowledge: Strong understanding IPC mechanisms and how to optimally use and configure IPC middleware for high data throughput robotics applications (e.g. with frameworks such as ROS).

Desirable
  • Experience with robotics or automotive frameworks such as Nvidia Jetson or Nvidia Drive.
  • Experience with embedded real time (RT) OS such as QNX.

This role is a full-time role based in Sunnyvale, CA (hybrid) and the reasonably estimated salary for this role ranges from $210,00 to $290,000 plus a competitive equity package. Actual compensation is based on the candidate's skills, qualifications, and experience.

Similar Jobs

More Jobs at Wayve

More Consumer Technology Jobs

Find similar Staff Software Engineer - OS, Robot Software jobs: