Sr. Staff Autonomy Embedded Software Engineer

Rivian
Palo Alto, United States of America
9 days ago

Role details

Contract type
Permanent contract
Employment type
Full-time (> 32 hours)
Working hours
Regular working hours
Languages
English
Experience level
Senior

Job location

Palo Alto, United States of America

Tech stack

Board Bringup
Abstraction Layers
Application Layers
Software Applications
Automation of Tests
Booting (BIOS)
Computer Security
Computer Programming
System Configuration
Software Debugging
Linux
Device Drivers
Memory Management
Middleware
Embedded Software
Ethernet
Firmware
Sync (Unix)
Joint Test Action (IEEE Standards)
Python
Real-Time Operating Systems
Software Engineering
Universal Asynchronous Receiver/Transmitter
Scripting (Bash/Python/Go/Ruby)
Serial Peripheral Interface
Information Technology
Bare Metal
Hardware Infrastructure

Job description

We are seeking a highly skilled and experienced candidate to help lead embedded software development for state-of-the-art sensor systems for next-generation autonomy. You will be a vital contributor, responsible for the complete development cycle of embedded software for our innovative Radar sensing products. You will be instrumental in the software life cycle, coding across the entire stack-from the application layer down to low-level device drivers. Responsibilities include creating software prototypes for early hardware/software co-designs, developing validation test cases in Python/C, building SDKs, and more. You will collaborate with top talent in embedded hardware and software development within this dynamic industry.

  • Architect, design, develop and deploy embedded software components for board bring-up, verification, and validation of automotive electronics.
  • Develop SW stack on bare-metal, RTOS and Linux, from application layer to device drivers.
  • Develop software stack with bootloader, PTP time sync, cybersecurity, and functional safety.
  • Mentor and guide a team of Software Engineers to design, develop, and deploy embedded software for board bring-up, verification, and debugging of automotive electronics.
  • Work with HW and SW architects to collaborate on next-gen platform architecture with various SoCs and the software stack, share plans/roadmaps, and align deliverables.
  • Crisply communicate with peers, stakeholders, customers, technical leaders, and OEMs/ODMs. Collaborate across multiple disciplines to deliver quality code, help resolve complex problems, prioritize, and get things done with high efficiency and urgency.
  • Oversee troubleshooting across the s/w and h/w stack to rootcause the issue and provide quick resolution collaborating with multiple teams if needed.
  • Design, drivers, middleware, applications and other components for enabling different electronic components.
  • Debug in real time across software and hardware to understand the real issues and provide solutions, work and collaborate with multiple teams if needed.

Requirements

  • Master's or Doctorate degree in Computer Science/Engineering or related field.
  • 8+ years of professional experience developing embedded software on microcontrollers (automotive, industrial, or similar safety-/reliability-critical domains).
  • 1+ years of experience as a technical lead, leading software development teams, is a big plus.
  • Strong programming skills in C for embedded systems; working knowledge of Python for tooling, scripting, or test automation is a plus.
  • Solid understanding of RTOS fundamentals (tasks, scheduling, interrupts, synchronization, memory management) and experience bringing up or configuring at least one RTOS-based platform.
  • Hands-on experience with board bring-up and low-level drivers for peripherals such as SPI, I2C, UART, CAN, Ethernet, GPIO, timers, ADC/DAC, and external memories.
  • Proficiency with embedded debugging tools (JTAG/SWD, Lauterbach or similar, in-circuit debuggers, flashing tools) and lab equipment (oscilloscope, logic analyzer, multimeter, power supplies).
  • Demonstrated ability to debug complex system issues end-to-end, spanning firmware, hardware, and interactions with test or application software.
  • Proven track record of cross-functional collaboration and clear, concise technical communication with architects, design engineers, validation teams, and external vendors.
  • Ability to crisply communicate with peers, stakeholders, customers, and technical leaders

Preferred Skills

  • Team leading skills are a big plus.
  • Experience with automotive ECUs is a big plus.
  • Background in platform/BSP development for MCU-based ECUs, including clocking, BSP, and device configuration, Hardware abstraction layers.
  • Experience with hardware components like sensors, gate drivers etc.

Apply for this position