Autonomous Vehicle Software Engineer at Outrider
Outrider, the pioneer in autonomous yard operations for logistics hubs, helps large enterprises improve safety, increase efficiency, and optimize their workforce. The only company exclusively focused on automating all aspects of yard operations, Outrider eliminates manual tasks that are hazardous and repetitive. Outrider’s mission is to drive the rapid adoption of sustainable freight transportation by deploying zero-emission systems. Outrider is a private company backed by NEA, 8VC, and other top-tier investors.
We’re searching for a talented C++ software developer with a track record of demonstrated high achievement who can take responsibility for the full software development lifecycle, including a) write software modules from a set of specifications; b) implement module interfaces; c) review bug reports, track bugs to a subsystem, identify corner cases, and work within the team to propose fixes.
The Autonomous Vehicle Software Engineer will report to the VP of Software Engineering and provide engineering support for vehicle autonomy software through all phases of Outrider's pilot and deployment programs.
This position will be responsible for the design, development, and unit testing for all aspects of vehicle sensing and decision-making functions, including perception, computer vision, sensor fusion, motion planning, object classification, text detection, motion planning, and SLAM.
This position requires exceptional software engineering skills – you will be responsible for helping build and support autonomous vehicle systems that redefine large enterprise supply chains and boast safe, error-free, and effective operational performance.
Duties and responsibilities
- Develop algorithms, autonomy software modules and libraries with responsibility for the full software engineering lifecycle: requirements, design, source code implementation, unit test, integration, and system test
- Create perception approaches for classifying obstacle types (vehicle, truck, pedestrian etc.)
- Design, build, test, and ship path-planning modules and functionality
- Design, build, test, and ship navigation modules and functionality
- Travel and perform fieldwork, depending on initial customer locations (up to 25%)
Background or familiarity with at least one of the following:
- Bachelor’s degree in computer science and/or electrical/electronics engineering
- C++ expertise – either professionally or via academic coursework
- ROS / software for ground robotic systems
- Sensor processing/perception
- Embedded software development
- Experience working on a team in a Linux environment and targeting embedded deployment
- Excellent written and verbal communication skills
- Exceptional analytical skills
- Demonstrated strong leadership and people skills
- Sterling references
Familiarity with, and/or prior use of:
- Experience with robotics software engineering, autonomous vehicle systems, computer vision, machine learning, and/or planning and controls
- Graphical user interface (GUI) toolkits for implementation of engineering interfaces and tools
- Visualization/graphics frameworks, libraries, and techniques to support engineering tools
- FOSS libraries/frameworks such as OpenCV, the Point Cloud Library (PCL), and similar packages
- FOSS tools supporting software engineering, such as CMake, continuous integration packages, the Google test framework and others
- Python expertise – either professionally or via academic coursework
- Prior use of Git for software version control
- Experience with sockets (TCP, UDP) programming
- Background in perception and/or motion planning