Sr. Embedded Linux & Platform Engineer

Rivian Automotive Inc

Torrance, CA

JOB DETAILS
SALARY
$135,100–$168,900 Per Year
SKILLS
ARM (Advanced RISC Machine), Agile Programming Methodologies, Atlassian JIRA, Automation, BSP, Background Investigation, Bash Scripting, Bill of Materials (BOM), Booting, Boundary Scan, C Programming Language, C++ Programming Language, CMake, Cloud Applications, Cloud Computing, Communications Protocols, Compensation Management, Computer Engineering, Computer Science, Continuous Deployment/Delivery, Continuous Integration, Contract Manufacturing, Cryptography, Debugging Skills, Dental Insurance, DevOps, Device Drivers, Digital Certificates, Docker, Documentation, Electrical Engineering, Embedded Linux, Embedded Software, Embedded Systems, Employment Law, File Systems, Functional Testing, GitHub, Hardware Administration, Hardware Design, I2C, Injections, Kernel Programming, Leadership, Legal, Licensing Compliance, Linux Kernel, Linux Operating System, Logic Analyzer, Maintain Compliance, Manufacturing, Manufacturing Design, Manufacturing Software, Media Access Control (MAC), Microcontroller, Middleware, Online Communications, Oscilloscope, Peripheral Hardware, Power Management, Prescription Drugs, Public/Media/Press/Analyst Relations, Pytest, Python Programming/Scripting Language, Reference Verification, Resource Management, Scripting (Scripting Languages), Security Monitoring, Signal Integrity, Software Design, Software Development, Software Engineering, System-on-a-Chip (SoC), Systems Maintenance, Systems/Internals Programming, Technical Leadership, Test Automation, Test Design, Test Fixtures, Universal Asynchronous Receiver-Transmitter (UART), Vision Plan, X.509 Digital Certificate
LOCATION
Torrance, CA
POSTED
30+ days ago

About Rivian Rivian is on a mission to keep the world adventurous forever. This goes for the emissions-free Electric Adventure Vehicles we build, and the curious, courageous souls we seek to attract. As a company, we constantly challenge what's possible, never simply accepting what has always been done. We reframe old problems, seek new solutions and operate comfortably in areas that are unknown. Our backgrounds are diverse, but our team shares a love of the outdoors and a desire to protect it for future generations. Role Summary As a Sr. Embedded Software Engineer, you will be a technical leader in the development of next-generation charging products. You will architect and implement full-stack embedded Linux solutions\u2014from low-level BSP and kernel drivers to scalable Yocto distributions and automated CI/CD pipelines. By bridging the gap between hardware enablement and secure cloud-ready applications, you will ensure our platforms are highly automated, secure, and optimized for large-scale manufacturing. Responsibilities 1. Core Platform & BSP Architecture \u2022 Define the full lifecycle of BSP development, including bootloader (U-Boot/Barebox) customization and Linux kernel tuning for ARM architectures. \u2022 Work directly with hardware engineers to perform initial board bring-up, debugging signal integrity and power management using oscilloscopes and logic analyzers. \u2022 Develop and maintain high-performance kernel drivers and customize Device Trees to support proprietary hardware peripherals. 2. Yocto & Build System Leadership \u2022 Architect modular, scalable Yocto/OpenEmbedded layers that support multiple hardware variants from a single codebase. \u2022 Implement advanced Bitbake techniques (shared state caches, PR servers) to reduce build times and ensure reproducible releases. \u2022 Build and distribute cross-compilation toolchains and QEMU environments to enable "hardware- less" application development. 3. Automation First DevOps & CI/CD \u2022 Design and maintain CI/CD pipelines (GitLab/GitHub Actions) that automate image generation and license compliance checks. \u2022 Architect automated testing rigs that flash builds onto physical hardware and run functional tests (LAVA/Pytest) without human intervention. \u2022 Develop software for contract manufacturers used in factory provisioning, unique device identification, and automated end-of-line functional testing. 4. Security & Lifecycle Management \u2022 Implement a Chain of Trust using NXP HAB or TI Secure Boot, alongside encrypted filesystems and OP-TEE. \u2022 Design and manage fail-safe, A/B partitioned update systems (e.g., Mender, RAUC) to ensure maximum uptime for field devices. \u2022 Automate the generation of Software Bill of Materials (SBOM) to ensure audit-ready documentation and security tracking. 5. Systems & Application Programming \u2022 Develop high-performance middleware and system services in C/C++ that interface directly with hardware. \u2022 Bridge the gap between low-level drivers and high-level applications, ensuring efficient data flow and resource management. \u2022 Optimize root filesystems and boot times to meet sub-second "Time-to-First-Frame" requirements. 6. Design for Manufacturing & Provisioning \u2022 Architect the "First-Boot" process and develop automated tools for MAC address assignment, serial number injection, and hardware verification. \u2022 Collaborate with hardware designers to ensure test points and debug interfaces are accessible for automated test fixtures (JTAG/Bed-of-Nails). \u2022 Implement automated injection of unique device identities (X.509 certificates) and secure keys during the manufacturing flow. Qualifications Essential Qualifications \u2022 BS or MS in Computer Science, Computer Engineering, Electrical Engineering or a related field. \u2022 4+ years of industry experience developing C/C++ based applications on embedded Linux. \u2022 2+ years of experience with build tools such as Make and CMake. \u2022 Strong scripting and automation skills using languages such as Bash or Python. \u2022 Deep experience in microcontroller development with a native understanding of I2C, SPI, UART, and SDIO. \u2022 Experience with implementing CI/CD pipelines using tools like GitLab CI, GitHub Actions, etc. \u2022 A proven passion for low-level Linux development and a "CLI-first" mindset. \u2022 The stamina to navigate 6,000+ page SoC reference manuals without hesitation. \u2022 A genuine curiosity and a track record of being a lifelong learner. Desired Qualifications \u2022 Experience with Buildroot and/or Yocto-based build systems for embedded devices. \u2022 Experience in kernel driver development \u2022 Hands-on experience with containerization technologies like Docker. \u2022 Experience with web-based communication protocols, especially gRPC and WebSockets. \u2022 Experience working with CAN and Modbus communication interfaces. \u2022 Experience with Agile development methodologies and using tracking tools like Jira and JAMA \u2022 Experience with designing software to meet functional safety e.g., UL1998, UL5500, etc. THIS IS WHERE YOU'LL WORK: Department: Charging & Energy Location: California (Torrance, Irvine, Palo Alto) Pay Disclosure Salary Range for Southern California Based Candidates: $135,100.00 - $168,900.00 (actual compensation will be determined based on experience, location, and other factors permitted by law). Salary Range for Northern California Based Candidates: $146,900.00 - $183,600.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. Equal Opportunity Rivian is an equal opportunity employer and complies with all applicable federal, state, and local fair employment practices laws. All qualified applicants will receive consideration for employment without regard to race, color, religion, national origin, ancestry, sex, sexual orientation, gender, gender expression, gender identity, genetic information or characteristics, physical or mental disability, marital/domestic partner status, age, military/veteran status, medical condition, or any other characteristic protected by law. Rivian is committed to ensuring that our hiring process is accessible for persons with disabilities. If you have a disability or limitation, such as those covered by the Americans with Disabilities Act, that requires accommodations to assist you in the search and application process, please email us at candidateaccommodations@rivian.com. Candidate Data Privacy Rivian may collect, use and disclose your personal information or personal data (within the meaning of the applicable data protection laws) when you apply for employment and/or participate in our recruitment processes ("Candidate Personal Data"). This data includes contact, demographic, communications, educational, professional, employment, social media/website, network/device, recruiting system usage/interaction, security and preference information. Rivian may use your Candidate Personal Data for the purposes of (i) tracking interactions with our recruiting system; (ii) carrying out, analyzing and improving our application and recruitment process, including assessing you and your application and conducting employment, background and reference checks; (iii) establishing an employment relationship or entering into an employment contract with you; (iv) complying with our legal, regulatory and corporate governance obligations; (v) recordkeeping; (vi) ensuring network and information security and preventing fraud; and (vii) as otherwise required or permitted by applicable law. Rivian may share your Candidate Personal Data with (i) internal personnel who have a need to know such information in order to perform their duties, including individuals on our People Team, Finance, Legal, and the team(s) with the position(s) for which you are applying; (ii) Rivian affiliates; and (iii) Rivian's service providers, including providers of background checks, staffing services, and cloud services. Rivian may transfer or store internationally your Candidate Personal Data, including to or in the United States, Canada, the United Kingdom, and the European Union and in the cloud, and this data may be subject to the laws and accessible to the courts, law enforcement and national security authorities of such jurisdictions. Please note that we are currently not accepting applications from third party application services.\n \nEssential Qualifications \u2022 BS or MS in Computer Science, Computer Engineering, Electrical Engineering or a related field. \u2022 4+ years of industry experience developing C/C++ based applications on embedded Linux. \u2022 2+ years of experience with build tools such as Make and CMake. \u2022 Strong scripting and automation skills using languages such as Bash or Python. \u2022 Deep experience in microcontroller development with a native understanding of I2C, SPI, UART, and SDIO. \u2022 Experience with implementing CI/CD pipelines using tools like GitLab CI, GitHub Actions, etc. \u2022 A proven passion for low-level Linux development and a "CLI-first" mindset. \u2022 The stamina to navigate 6,000+ page SoC reference manuals without hesitation. \u2022 A genuine curiosity and a track record of being a lifelong learner. Desired Qualifications \u2022 Experience with Buildroot and/or Yocto-based build systems for embedded devices. \u2022 Experience in kernel driver development \u2022 Hands-on experience with containerization technologies like Docker. \u2022 Experience with web-based communication protocols, especially gRPC and WebSockets. \u2022 Experience working with CAN and Modbus communication interfaces. \u2022 Experience with Agile development methodologies and using tracking tools like Jira and JAMA \u2022 Experience with designing software to meet functional safety e.g., UL1998, UL5500, etc. THIS IS WHERE YOU'LL WORK: Department: Charging & Energy Location: California (Torrance, Irvine, Palo Alto)\n \n1. Core Platform & BSP Architecture \u2022 Define the full lifecycle of BSP development, including bootloader (U-Boot/Barebox) customization and Linux kernel tuning for ARM architectures. \u2022 Work directly with hardware engineers to perform initial board bring-up, debugging signal integrity and power management using oscilloscopes and logic analyzers. \u2022 Develop and maintain high-performance kernel drivers and customize Device Trees to support proprietary hardware peripherals. 2. Yocto & Build System Leadership \u2022 Architect modular, scalable Yocto/OpenEmbedded layers that support multiple hardware variants from a single codebase. \u2022 Implement advanced Bitbake techniques (shared state caches, PR servers) to reduce build times and ensure reproducible releases. \u2022 Build and distribute cross-compilation toolchains and QEMU environments to enable "hardware- less" application development. 3. Automation First DevOps & CI/CD \u2022 Design and maintain CI/CD pipelines (GitLab/GitHub Actions) that automate image generation and license compliance checks. \u2022 Architect automated testing rigs that flash builds onto physical hardware and run functional tests (LAVA/Pytest) without human intervention. \u2022 Develop software for contract manufacturers used in factory provisioning, unique device identification, and automated end-of-line functional testing. 4. Security & Lifecycle Management \u2022 Implement a Chain of Trust using NXP HAB or TI Secure Boot, alongside encrypted filesystems and OP-TEE. \u2022 Design and manage fail-safe, A/B partitioned update systems (e.g., Mender, RAUC) to ensure maximum uptime for field devices. \u2022 Automate the generation of Software Bill of Materials (SBOM) to ensure audit-ready documentation and security tracking. 5. Systems & Application Programming \u2022 Develop high-performance middleware and system services in C/C++ that interface directly with hardware. \u2022 Bridge the gap between low-level drivers and high-level applications, ensuring efficient data flow and resource management. \u2022 Optimize root filesystems and boot times to meet sub-second "Time-to-First-Frame" requirements. 6. Design for Manufacturing & Provisioning \u2022 Architect the "First-Boot" process and develop automated tools for MAC address assignment, serial number injection, and hardware verification. \u2022 Collaborate with hardware designers to ensure test points and debug interfaces are accessible for automated test fixtures (JTAG/Bed-of-Nails). \u2022 Implement automated injection of unique device identities (X.509 certificates) and secure keys during the manufacturing flow.

About the Company

R

Rivian Automotive Inc