Role SummaryAs a Staff Embedded Software Engineer, you will play a key role in the development of cutting-edge charging products. You will lead software design and implementation on embedded Linux platforms, collaborating closely with cross-functional teams. Your responsibilities also include implementing and maintaining CI/CD pipeline to streamline software development and deployment. Your deep understanding of embedded systems will be essential to ensuring our products are reliable, high-performing, and secure.
Responsibilities- Design, develop and maintain embedded Linux application software for residential and commercial charging products.
- Develop unit tests and systems level SIL tests to ensure the highest code quality.
- Support CI/CD system software to facilitate building, testing and distribution of production-level software.
- Develop and support software tools used for development and testing.
- Create software architectures and designs with Functional Safety in mind.
- Lead technical meetings with team members and management to review system design, software architecture, and feature performance.
- Participate in code reviews providing technical feedback to drive quality design.
- Provide technical guidance and mentorship to junior team members, fostering a culture of continuous learning and growth.
- Stay up to date with emerging technologies and industry trends, evaluating their potential impact on our products and recommending relevant solutions.
Where you'll work: Torrance, CA or Irvine, CA. 3 day in office expectation.
QualificationsEssential Qualifications- BS or MS in Computer Science, Computer Engineering, Electrical Engineering or a related field.
- 6+ years of industry experience developing C/C++ based applications on embedded Linux.
- 3+ years of experience with build tools such as Make and CMake.
- Experience with implementing CI/CD pipelines using tools like GitLab CI, GitHub Actions, etc.
- Experience with unit test frameworks e.g., Google Test.
- Strong scripting and automation skills using languages such as Bash or Python.
Desired Qualifications- Experience with web-based communication protocols, especially gRPC and WebSockets.
- Experience working with CAN and Modbus communication interfaces.
- Hands-on experience with containerization technologies like Docker.
- Experience with Yocto-based build systems for embedded devices including kernel customization, package selection, and recipe development.
- Experience working in a Real-Time Operating Systems (RTOS) environment. FreeRTOS, QNX, etc.
- Experience with Agile development methodologies and using tracking tools like Jira and JAMA
- Experience with Open Charge Point Protocol (OCPP).
- Experience with electric vehicle charging protocols such as SAE J1772, DIN SPEC 70121, and ISO 15118.
- Experience with designing software to meet functional safety e.g., UL1998, ISO26262, ASPICE, etc.
Pay DisclosureSalary Range for Southern California Based Candidates: $171,100.00 - $213,900.00 (actual compensation will be determined based on experience, location, and other factors permitted by law).
Salary Range for Northern California Based Candidates: $186,000.00 - $232,500.00 (actual compensation will be determined based on experience, location, and other factors permitted by law).
Benefits Summary: Rivian provides robust medical/Rx, dental and vision insurance packages for full-time and part-time employees, their spouse or domestic partner, and children up to age 26. Full Time Employee coverage is effective on the first day of employment. Part-Time employee coverage is effective the first of the month following 90 days of employment.