Rivian and Volkswagen Group Technologies is looking to solve the challenges of electric vehicles through technology that will set the standards for software-defined vehicles around the world by shaping the architecture, scalability, and security of Over-the-Air (OTA) software update systems for next-generation connected vehicles.
Requirements
- Proficiency in Rust and C/C++ for systems-level development.
- Expertise building and scaling middleware, distributed systems, or connected vehicle software platforms.
- Experience with OTA systems in automotive, IoT, or embedded domains.
- Experience in systems-level design and architecture.
- Experience with networking protocols (e.g., HTTP, MQTT, TCP/IP), OTA frameworks, and secure software update strategies.
- Experience with software security, cryptographic principles, and secure boot mechanisms.
- Experience with communications protocols like websocket and gRPC
Responsibilities
- Define and evolve the end-to-end architecture for OTA middleware systems, ensuring modularity, extensibility, and long-term scalability.
- Design and implement core OTA middleware components and services, with deep consideration for fault tolerance, state management, and data integrity.
- Build APIs and robust communication frameworks between in-vehicle systems and cloud platforms.
- Champion security-first design in all OTA communications, ensuring alignment with industry standards (e.g., ISO 21434, ISO 26262) and regulatory requirements.
- Drive observability and operational excellence through monitoring, diagnostics, and incident response improvements.
- Make strategic technical decisions and conduct design reviews across multiple teams and domains.
- Set engineering best practices for system reliability, security, and performance.
Other
- Act as a technical mentor and advisor for other engineers, guiding code quality, design decisions, and career development.
- Work cross-functionally with embedded, cloud, cybersecurity, compliance, and product teams to drive OTA integration and alignment across the stack.
- Experience leading and influencing cross-functional teams as well as mentoring junior engineers.
- 7+ years of software engineering experience, with at least 2 years in a technical leadership or Staff/Principal-level role.
- Bachelor’s degree in Computer Science, Software Engineering, Computer Engineering, Electrical Engineering, a relevant technical field or equivalent practical experience.