Senior Software Engineer, Sensor Platform
Design and develop reliable sensor and compute platform software for autonomous vehicles, spanning device drivers through application-level systems. The role requires 6+ years of experience, strong C++ and concurrency expertise, and deep Linux real-time systems knowledge.
About the job
Responsibilities
- Design and develop sensor and compute systems for robotics.
- Architect and deploy Nuro sensors and autonomous software with high reliability and performance.
- Deliver reliable software through metrics monitoring, automated testing, and vendor collaboration.
- Debug complex systems, identify root causes of failure modes, and deploy effective solutions.
- Lead cross-functional sensor and compute projects for autonomous vehicles.
- Mentor software engineers.
Requirements
- Experience in robotics or autonomous driving systems.
- Proven ability to analyze complex real-time systems.
- Strong proficiency in C++, particularly concurrency.
- System software development experience spanning device drivers through application-level software.
- Deep understanding of Linux kernel-level algorithmic correctness and performance optimization.
- 6+ years of experience with a bachelor's or master's degree in Computer Science, Electrical Engineering, or a closely related field; or 4+ years with a Ph.D.
- Clear, concise communication and effective collaboration with engineers, product managers, and other stakeholders.
Nice-to-haves
- Experience with robotics hardware components and embedded platforms containing multiple CPUs, GPUs, ISPs, and accelerators.
- Experience programming peripheral devices and using USB, SPI, I2C, and UART protocols.
- Experience with radar, lidar, visual cameras, or thermal imaging cameras.
- Experience with machine learning or image processing.
- GPU programming and low-level driver optimization for NVIDIA GPUs.
- Linux kernel and device-driver programming, including threading, IPC, shared memory, and synchronization.
- Networking knowledge spanning PHY, TCP, UDP, and application-layer protocols.
Compensation
- Base pay range: $160,360–$240,540.
- Eligible for an annual performance bonus, equity, and competitive benefits.
Skills
C++, Concurrency, Linux Kernel, Device Drivers, Real-Time Systems, Automated Testing, Robotics, Autonomous Driving, Usb, Spi, I2C, Uart, Gpu Programming, Networking, Nvidia Gpus
Similar jobs
Embedded Engineering jobsLeads systems engineering for autonomous battery-electric rail vehicles, defining architectures and requirements while driving integration, verification, and validation across hardware, firmware, and command-and-control software. Requires a relevant engineering or computer science degree and at least five years working with complex hardware systems.
Leads the technical direction and implementation of safety-critical vehicle controls, from actuator control and trajectory tracking through fleet-scale calibration and deployment. The role also mentors the controls team and requires production software experience, vehicle controls expertise, and strong numerical optimization foundations.
Develops C/C++ software, firmware, integrations, and manufacturing tools for YubiKey devices and custom embedded hardware platforms. The role requires 5+ years of software engineering experience, embedded development expertise, and familiarity with Windows or Linux internals.
Owns end-to-end modem algorithm definition, implementation, and validation for a high-performance satellite communications ground-network platform. Requires a bachelor’s degree, 5+ years of relevant experience, strong digital communications expertise, and experience deploying waveform processing into SDR or FPGA systems.
Leads development and deployment of autonomy, robotics, and embedded software for safety-critical pilot assistance systems. The role requires 5+ years of production robotic or embedded software experience, strong C++ or Python skills, and hands-on hardware and edge-compute integration.