About The Position

As a Software Engineer specializing in safety-critical self-driving embedded software, you will play a vital role in the design, development, and deployment of software that underpins essential self-driving features. Your responsibilities encompass a range of technical tasks, from software development to architecture analysis, all contributing to the successful implementation of robust and reliable self-driving solutions.

Requirements

  • B.S. / M.S. in Computer Science, Engineering, or a related field
  • 3+ years of experience developing production-grade software for safety and function critical applications in automotive, aerospace, robotics, or related fields
  • Strong embedded C programming skills
  • Experience GCC/Clang compilers + linkers
  • Experience with Bazel or other large-project build systems
  • Strong triage and problem solving skills
  • Experience with resource-constrained architectures
  • Experience with real-time applications and kernels
  • Experience writing, profiling, and debugging multi-threaded software
  • Demonstrated success working in fast-paced, continuous integration / continuous development environment
  • Familiarity with at least one scripting language (for example Bash, Lua, Python)

Nice To Haves

  • Experience with Ethernet + TCP/IP networking
  • Experience with CPU performance measurement and profiling
  • JTAG, logic analyzer debugging
  • Timesync
  • ARM Cortex R (Armv8-R), Infineon TriCore, similar
  • Functional Safety experience (ISO-26262, IEC-62304, DO-178C, etc.)

Responsibilities

  • Develop software working on real-time operating systems for resource efficient systems (FreeRTOS, Zephyr, etc.) on a distributed and heterogeneous system (multiple processors, multi-core, multi-threaded) including in-house developed silicon
  • Develop necessary tools to support development, building, observability, debugging, and testing
  • Create early project definitions, set up build system and compiler tooling, solving complex problems and develop infrastructure along the way to allow for more efficient development from the team
  • Assist in software-design and code reviews while assisting other developers on technical issues, design choices, and decision making
  • Analysis of requirements, architecture, design, development, code review, quality assurance, and deployment of entire software engineering life cycle
  • Identify gaps in development process and technical implementations to address and improve the quality and pace of team deliverables
  • Coordinate with application development and cross-functional teams to enable and support vehicle and ADAS features

Benefits

  • We offer a comprehensive package of benefits for full-time and part-time employees, their spouse or domestic partner, and children up to age 26, including but not limited to paid vacation, paid sick leave, and a competitive portfolio of insurance benefits including life, medical, dental, vision, short-term disability insurance, and long-term disability insurance to eligible employees.
  • You may also have the opportunity to participate in Rivian’s 401(k) Plan and Employee Stock Purchase Program if you meet certain eligibility requirements.
  • Full-time employee coverage is effective on their first day of employment.
  • Part-time employee coverage is effective the first of the month following 90 days of employment.
  • More information about benefits is available at rivianbenefits.com.
© 2024 Teal Labs, Inc
Privacy PolicyTerms of Service