Software Engineer -- Autonomous Vehicle Platform and Tools 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.
You'll be building essential software tools and infrastructure to support the acquisition, processing, visualization, and analysis of data from the Outrider System, a logistics automation offering with an autonomous truck at its center. This position requires exceptional C++ and Python 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.
The Software Engineer -- Autonomous Vehicle Platform and Tools will report to the head of software and platform integration and provide engineering support for the software enabling vehicle autonomy through all phases of Outrider's development and deployment programs. Ease with application development tools like Qt, a background in robotics (or, generally, system-of-systems products), and the capability to drive the full software development lifecycle with minimal guidance are all key to success in the role.
This position plays an essential role in helping deliver a safety-critical system for industrial automation -- it offers a very talented software engineer the chance to help develop a market-defining enterprise product that combines autonomous vehicle technology with a software-as-a-service (SaaS) business model.
The ideal candidate will embrace our goal to drive zero-emission, self-driving vehicle adoption, and help us realize our potential to define, build, and lead a new, category of robotic automation for the enterprise.
Duties and responsibilities
- Develop a variety of productivity-enhancing data applications for the software engineering team. Examples include tools for mapping and dynamic data extraction, combination, analysis, and visualization related to autonomous vehicle software design, development, and testing
- Create tools for displaying graphical representations of data and allowing interaction to examine and query large datasets
- Design rviz implementations of autonomous vehicle remote assistance tools
- Travel and perform fieldwork, depending on initial customer locations (up to 25%)
- Bachelor’s degree in computer science and/or electrical/electronics engineering
- C++ and Python expertise – either professionally or via academic coursework
- In-depth knowledge of graphical user interface (GUI) toolkits for implementation of engineering dashboards and tools
- Facility with visualization/graphics frameworks, libraries, and techniques to support engineering tools
- Prior use of FOSS tools supporting software engineering, such as CMake, continuous integration packages, the Google test framework and others
- Proficiency with Qt, OpenGL and/or other visualization and graphic tools/packages
- Experience working on a team in a Linux environment
- Excellent written and verbal communication skills
- Exceptional analytical skills
- Demonstrated strong leadership and people skills
- Sterling references
- Experience with robotics software, autonomous vehicle systems, machine learning, and/or data science
- Background or familiarity with ROS (software for robotic systems)
- Prior use of Git for software version control
- Experience with sockets (TCP, UDP) programming