Embedded Software Engineer - Core Os

Applied Intuition Applied Intuition · Robotics · Sunnyvale, CA · Onboard Software

Senior Software Engineer role focused on developing embedded software applications for vehicle operating systems, integrating vendor components, implementing RTOS applications, and customizing Linux/Android middleware. Requires strong C/C++ skills and experience with low-level hardware debugging.

What you'd actually do

  1. Architect and develop highly reliable embedded software
  2. Integrate vendor components into a common software framework, ensuring proper low-level communication (e.g., CAN, LIN, I2C, SPI, UART etc.)
  3. Implement real-time operating system (RTOS) applications as required for the product
  4. Drive custom in-vehicle infotainment device solutions
  5. Implement best practices in embedded AOSP development, HAL customization, and Android middleware, including maintenance and security

Skills

Required

  • 3+ years of experience working on embedded devices
  • BS in Computer Science, Computer Engineering, or a related field
  • Strong background in embedded software development using C/C++ and assembly languages
  • Hands-on experience with Android Board Support Package (BSP), Android middleware, HAL customization and maintenance
  • Advanced software debugging skills, with a strong focus on low-level hardware debugging to ensure full system operation, and debugging Android Native Crashes, system crashes, and Android middleware (Drivers, HAL, Libraries, Framework)
  • Experience developing software for complex embedded systems and custom SoCs, with expertise in peripheral interfaces like UART, SPI, CSI-2, I2C, GPIO, USB, and PCIe

Nice to have

  • Prior experience in developing on-vehicle technology
  • Ability to work with safety-critical robotic systems with real-time constraints
  • Proficiency in embedded systems testing, with experience enhancing automated test frameworks
  • Experience in creating Android device builds to support Android system development, RTOS and middleware applications, and strong knowledge of writing, modifying, and maintaining Linux services under SELinux
  • Proven ability to design, integrate, and deliver code into production environments within aggressive timelines

What the JD emphasized

  • embedded software development using C/C++
  • low-level hardware debugging
  • Android Board Support Package (BSP)
  • Android middleware
  • HAL customization