Software Engineer – System Infrastructure / OS & Connectivity
About the Team
Our company is at the forefront of developing cutting-edge autonomous driving technology. Autonomous vehicles are highly complex systems that rely on robust operating systems, seamless network connectivity, and efficient management tools. We are responsible for developing and maintaining the operating systems and system software that power self-driving cars and delivery robots. Our team ensures seamless network connectivity, reliable fleet-wide releases with observability, and end-to-end ride-log capture and delivery. By providing the critical infrastructure that underpins autonomous mobility, we enable our vehicles to operate safely, efficiently, and at scale.
About the Role
In this role, you will be directly involved in the design and development of the operating system that powers our autonomous vehicles. You will create management tools that enable robust control of the platform, covering configuration, updates, and connectivity to ensure reliability at scale. As the key bridge between software and hardware, you will help developers integrate their applications with the in-vehicle platform, ensuring seamless operation in production environments. You will also empower our operations teams with smooth, reliable, and intuitive tools that make managing fleets of autonomous systems efficient and hassle-free.
What You'll Do
- Design, develop, and maintain system-level software for Linux: x86, arm64.
- Work on software that interacts with operating system components and cloud services, focusing on efficiency and reliability.
- Build OS distribution for autonomous vehicles and robots.
- Contribute to system architecture design, ensuring that software integrates smoothly with existing infrastructure.
- Ensure software system security by applying basic security principles.
- Integrate the various software and hardware components of our autonomous driving stack on the vehicle , ensuring seamless operation.
- Write scripts and automate tasks using Python.
What You'll Need
- 3+ years of experience in system-level software development.
- Proficiency in Linux-based systems, including both x86 and embedded devices.
- Proficiency in one of the required programming languages (Python, C++, Go) with a readiness to learn and work with Python and Go.
- Familiarity with Linux networking, including bridging, routing and virtualization.
- Experience with backend development and cloud services (AWS is a significant plus).
- Basic understanding of software system security principles.
Nice to Have
- Knowledge of Linux distribution management, particularly Ubuntu and NixOS (the latter is a significant plus).
- Knowledge of isolation and virtualization techniques, particularly Linux containers and Docker.
- Experience with various software build systems (Bazel is a significant plus).
- Familiarity with DevOps practices, including CI/CD processes on GitHub, AWS, and Kubernetes for cloud infrastructure.
- Knowledge of Linux kernel basics and the ability to write or modify hardware drivers.
- Willingness to engage in cross-functional tasks and learn new technologies.
- Willingness to write system software for in-house developed hardware.
Candidates are required to be authorized to work in the U.S. The employer is not offering relocation sponsorship, and remote work options are not available.
Apply for this job
*
indicates a required field