Software Engineer – Robot Software Platform
Company | Wayve |
---|---|
Location | Sunnyvale, CA, USA |
Salary | $Not Provided – $Not Provided |
Type | Full-Time |
Degrees | Bachelor’s |
Experience Level | Junior, Mid Level |
Requirements
- Proficiency in programming languages such as C++ and/or Rust for high-performance embedded Linux systems.
- Knowledge of how distributed systems operate, either in cloud or robotics systems, and how to make these types of systems more scalable and performant.
- Ability to delve deep into performance issues, stack traces, core dumps, slow disk writes, high system load, memory bottlenecks, external device bottlenecks, and threading issues.
- Familiarity with embedded Linux, build systems, and/or user space applications.
- Strong understanding of how to optimally use and configure IPC middleware for high data throughput robotics applications on frameworks such as ROS.
Responsibilities
- Build software to enable full sensor integration and data capture at the scale and quality necessary for a fully autonomous vehicle.
- Deliver and maintain soft-real-time Linux-based applications to a fleet of embedded devices on automobiles, including data collection and storage, as well as machine learning inference on the edge.
- Create robust, fault-tolerant software solutions with comprehensive system diagnostics to enable us to quickly and efficiently resolve any issues preventing our deployed fleet from operating at maximum capacity.
- Design, implement, and use system monitoring tools to improve performance and resolve both ad hoc and systemic issues.
Preferred Qualifications
- Experience with device driver implementation, kernel module programming, and/or debugging low-level system issues would be beneficial in this role.
- Experience with developing software for embedded Linux systems and real-time operating systems such as QNX.
- A Bachelor’s degree in Computer Science, Electrical Engineering, or a related field. Advanced degrees are a plus.