Software Engineer Intern - C++ Runtime Platform
In-person · Santa Clara, CA, US... more
In-person · Santa Clara, CA, US... more
Job Description
Are you interested in making an impact on Plus’ autonomous driving technology, to take our software’s safety and resiliency to the next level? During your internship, you will work closely with various engineering teams, from low-level middleware to high-level robotics algorithms, helping to identify and address the most elusive corner cases before the code is shipped, as well as automate such preemptive bug discovery. While at it, you will have the opportunity to learn a lot about autonomous driving system architecture and design, how individual robotics components work internally as well as together in order to navigate the vehicle, and more.
Responsibilities:
- Learn about the core platform components that lie in the foundation of autonomous driving software and facilitate its smooth and reliable operation.
- Utilize a range of tools to analyze C++ source code, compiled binaries as well as actual behavior of the production system in order to detect problematic areas.
- Actually fix the uncovered problems and ensure that they don’t come back in the future.
- Develop tools and pipelines to help automate the bug-hunting process.
Required Skills:
- Experience coding using C++14 or later (you’ll be reading a lot of production code and writing some yourself).
- Familiarity with development workflow on Linux: compiling and debugging C++ code, basic shell scripting.
- Basic proficiency of the Python programming language.
- Willingness to learn a lot and explore the unknown!
Preferred Skills:
- Experience with Operating Systems concepts such as concurrency, virtual memory, particularly in the context of the C++ programming language.
- Experience with the gdb or lldb debugger.