Software Engineer - Over-the-air Updates

Applied Intuition Applied Intuition · Robotics · Sunnyvale, CA · Vehicle OS

Software Engineer role focused on designing, developing, and maintaining scalable Over-the-Air (OTA) update platforms for connected devices. This involves building secure delivery mechanisms, cloud infrastructure, and device management systems for firmware, applications, and configuration updates across large fleets, supporting mission-critical applications in various industries.

What you'd actually do

  1. Design and develop scalable OTA update platforms that process and distribute software packages, firmware updates, and configuration changes to large fleets of connected devices using modern cloud-native architecture in C++ and Go
  2. Architect and implement secure update delivery pipelines using technologies like cryptographic signing, encrypted communication channels, and authentication systems to ensure update integrity and prevent unauthorized modifications
  3. Build and maintain cloud-based OTA infrastructure leveraging distributed systems, containerization with Docker, and orchestration frameworks to support high-volume, low-latency package distribution
  4. Develop versatile package management systems for handling versioning, dependencies, and distribution of software components across diverse device ecosystems
  5. Create efficient content delivery networks (CDNs) optimized specifically for package distribution to ensure fast and reliable updates even in bandwidth-constrained environments
  6. Work on advanced monitoring and analytics systems that track update success rates, performance metrics, and provide real-time visibility into OTA campaign status across global device deployments

Skills

Required

  • distributed systems development
  • C++
  • Go
  • scalable cloud-native applications
  • AWS, Azure, or GCP services
  • CI/CD pipelines
  • infrastructure as code
  • containerization technologies
  • secure software deployment
  • cryptographic signing
  • certificate management
  • encrypted communication protocols
  • security best practices for remote updates
  • embedded Linux
  • real-time operating systems
  • microservices architecture patterns
  • API design
  • service mesh technologies
  • content delivery networks (CDNs)
  • package delivery networks (PDNs)

Nice to have

  • OTA frameworks and tools (Mender, RAUC, SWUpdate)
  • Go's cloud development ecosystem (Go Cloud, gRPC)
  • distributed database systems
  • fleet management systems
  • device monitoring
  • remote diagnostics
  • large-scale device lifecycle management
  • security frameworks and compliance
  • penetration testing
  • vulnerability assessment
  • cybersecurity standards
  • Terraform
  • CloudFormation