Senior Software Engineer
Job Summary
The Senior Software Engineer will design and implement complex, low-latency C++ software for Linux-based embedded platforms. This role focuses on the Autonomy Interface SW (AIS) team, developing foundational software for vehicle actuation and sensing integration. The position requires strong expertise in system requirements and delivering high-quality, safety-critical production software.
Responsibilities
- Develop C++ software for autonomy interface
- Perform system requirements decomposition and analysis
- Lead technical solutions and code reviews
- Mentor developers and maintain best practices
Required Skills
- C++ (17+) and Python3
- Linux-based systems
- Embedded software development
- System architecture and requirements management
Job Details
### Responsibilities
- Develop software in C++ to interface with the autonomy stack with the other compute, sensors and custom hardware on the vehicle.
- Improve and deliver reliable software through requirements generation, continuous integration, automated testing, issue tracking, and code reviews.
- Collaborate with colleagues across multiple teams and mentor other developers.
- Lead and generate technical solutions including specifying of requirements, functional decomposition, analysis, development and testing for current, new and major programs.
- Perform as Subject Matter Expert (SME) for at least one platform or application component.
- Provide, communicate, and support common best practices among software community.
- Lead development of software system team design content and software anomaly corrections.
- Specify and balance system requirements.
### Required Qualifications
- 4+ years' experience building and shipping production-quality software, with a focus in Linux based environments.
- Bachelor's, Master's, or PHD in relevant field or relevant work experience.
- Experience with C++ (17+), STL, and Python3.
- Experience working with and building tooling for large, complex systems.
- A high standard and commitment to quality by designing for maintainability, testability and efficiency.
### Preferred Qualifications
- 7+ years' experience building and shipping production-quality software, with a focus in Linux based environments.
- Experience with safety critical development (FDA, FAA, Automotive).
- Experience with build tools like bazel or cmake.
- Experience debugging across cloud and embedded systems.
- Experience with ARXML or/and SOME/IP.
- Experience with networking, TCP/IP and UDP.
- Building and shipping production-quality software on and for embedded Linux / POSIX systems.
- Experience working with ROS or similar pub/sub IPC systems.