Summary
Stack AV is developing revolutionary AI and advanced autonomous systems designed to enhance safety, reliability, and efficiency of modern operations. The Software Engineer, Onboard Infrastructure will join a high-caliber team responsible for delivering foundational technology, designing and implementing features and optimizations across critical systems for Stack's self-driving platform.
Responsibilities
- Design and implementation of high-throughput, low-latency logging frameworks capable of handling massively parallel data streams - telemetry, event and console logs
- Design, development, and implementation of features, interfaces, and optimizations for Clockwork in collaboration with Autonomy, Cloud, and Safety teams
- Continually identify opportunities for improving the performance, reliability, and usability of Clockwork, evaluating tradeoffs amongst multiple options in a resource-constrained environment
- Contribute to the prototyping, development, and maintenance of new and existing sensor interfaces that drive the Perception system of the AV
- Ensure delivery of high quality software through the principled and consistent use of best practices including robust automated testing, manual and automated code review
Skills
- Proficiency of C++ with deep understanding of multi-threading, concurrency models, lock-free data structures, and memory management
- Knowledge of software engineering life cycle and algorithm design principles
- Experience developing high performance software systems, deployed in resource constrained environments, preferably for safety critical applications
- Strong understanding of the POSIX programming environment, Linux, and concurrent programming
- A passion for writing robust, intuitive, and pragmatic production code
- Strong understanding of Networking fundamentals
- Comfortable working with & debugging embedded systems
- Experience working with common tooling such as Bazel, Boost, etc
- Excellent communication skills and ability to work in a team environment
- Experience with performance evaluation and optimization is highly desired
- Domain experience working in autonomous driving, robotics or related industry is highly desired
Qualifications
Must Haves
- Proficiency of C++ with deep understanding of multi-threading, concurrency models, lock-free data structures, and memory management
- Knowledge of software engineering life cycle and algorithm design principles
- Experience developing high performance software systems, deployed in resource constrained environments, preferably for safety critical applications
- Strong understanding of the POSIX programming environment, Linux, and concurrent programming
- A passion for writing robust, intuitive, and pragmatic production code
- Strong understanding of Networking fundamentals
- Comfortable working with & debugging embedded systems
- Experience working with common tooling such as Bazel, Boost, etc
- Excellent communication skills and ability to work in a team environment
Nice to Haves
- Experience with performance evaluation and optimization is highly desired
- Domain experience working in autonomous driving, robotics or related industry is highly desired