Determine technology teams' needs and implement the foundational framework for autopilot code
Write high-performance code and build performance monitoring infrastructure
Ensure long-term data compatibility and algorithm reproducibility
Create infrastructure to help developers identify and fix code issues
Automate testing processes for autopilot code in repositories
Write well-structured and documented code solutions
Benefits
Work at the cutting edge of autonomous vehicle technology
Impact product quality significantly through your contributions
Collaborate closely with technology developers
Opportunity to establish best development practices
No remote work options, ensuring strong team collaboration
Full Job Description
About the Team
Our team is at the forefront of enabling cutting-edge autonomous vehicle technology by developing the foundational framework for executing autopilot code, focusing on reliability, reproducibility, and determinism-key aspects for offline quality evaluations. The team is also responsible for building the infrastructure for offline A/B testing, enabling rigorous validation and optimization of autopilot technology. About the Role
We are looking for an experienced software engineer who is passionate about building a robust and reliable platform for autonomous vehicles and robots. The foundation of our self-driving technology is the pipeline - a specialized framework that is responsible for orchestrating the work of the autopilot components and ensuring interaction between them. You will be responsible for building the framework from discussing needs with the users (technology developers) and designing the solution to implementing it. As performance, safety and reliability are crucial aspects of the technology, you will play a key role in establishing best development practices and will have a significant impact on the quality of the product. What You'll Do
Determine technology teams' needs, design and implement foundation framework responsible for executing autopilot code.
Care about performance and safety. You will write high-performance code and build infrastructure to monitor the system's performance.
Think about long-term data compatibility and algorithm reproducibility. The recorded data is used to improve our algorithms and reliably measure their quality.
Build infrastructure to help developers detect and understand problems in their code.
Set up and automate automated testing processes for the autopilot code committed to the repository.
Care about writing well-designed and structured code. The simpler solutions we have, the easier they are supported. Document the solutions into design docs.
What You'll Need
Strong experience in modern C++.
Experience in writing high-performance code.
Problem-solving skills are important. You are expected to understand a problem clearly, weigh trade-offs of different solutions given their implications, and after the implementation be sure the goal has been achieved.
You have designed complex systems.
Nice to Have
Experience in Python. We use it for non-time-critical code.
You have had experience writing Bazel rules and macros. We rely on this build system heavily.
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.