Rivian
Staff Firmware and Embedded Software Engineer
Rivian, Palo Alto, California, United States, 94306
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 whats 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:In this role, you will be a member of the Future Programs team, responsible for all embedded software & firmware development on select next generation products. You will partner with existing embedded software, mobile, cloud connectivity and information technology teams through all stages of program development, from concept to launch. In this role you will collaborate with dedicated HW and UX engineering teams to deliver powerful, unique and vertically integrated user experiences.Responsibilities:Development of wireless connectivity features across a range of associated protocols (BLE, LTE, GPS, NFC, UWB), interfacing with existing cloud infrastructure where applicable.
Lead the design and implementation of firmware running on a distributed embedded system with multiple microcontrollers, with a focus on optimizing power/energy consumption, security, and safety. Define system level power requirements and implementing low power modes of operation for each of the microcontroller. Early phases of firmware development will focus on hardware validation and testing, defining and implementing a system of secure updates, and manufacturing test support.
Expertise in various wireless communication protocols such as MQTT, HTTPS, Bluetooth Low Energy (BLE), and other wireless protocols, and the ability to integrate them into firmware designs while considering power efficiency. Experience with I2C, SPI, CAN, USB-PD, and other digital protocols will be paramount to success.
Optimize firmware for low-power operation, extending the battery life of IoT devices and supporting energy-efficient designs. Profile power consumption and identify opportunities for optimization on the submodule as well as system level.
Implement robust security measures within firmware to safeguard devices against potential threats, ensuring data integrity, authentication, and encryption protocols are in place. Familiarity with OTA implementation on distributed systems. Hands on experience working with RTOS, particularly Zephyr.
Develop comprehensive test plans and perform thorough testing to validate firmware functionality, stability, and performance under various conditions, including low power modes. Implement a robust CI/CD pipeline to ensure the team has access to the latest stable and development builds.
Work with cross functional group to determine hardware testing needs and support testing and validation effort. Familiarity with UDS or XCP protocols.
Development of HMI (human-machine interface) software features, including display functionality with core vehicle information and infotainment content.
Integration of user interfaces for hardware I/O including, but not limited to switches, knobs and other control mechanisms.
Partner with existing embedded software, mobile, connectivity and information technology teams to share common platforms and code base, where applicable.
Qualifications:
5+ years of experience in embedded software/firmware development, preferably with vertically integrated consumer products
Experience with high volume consumer products with internally developed connectivity features (IoT, OTA updates, etc)
Delivering software-enabled hardware products, including low-level firmware development (drivers, bootloaders)
Expert knowledge of embedded microprocessor tools and hardware peripherals
Proficiency in C/C++ and debugging embedded systems
BS in an engineering discipline, preferably Computer Science or Electrical Engineering
Familiarity with real-time operating system platforms, ideally in functional-safety critical applications
Familiarity with hardware/software architecture selection with cost and performance tradeoffs (OS, MCU, etc selection)
Established success in building, growing and developing fast paced, highly experienced software teams spanning multiple embedded disciplines
Experience with CI/CD & test automation applied to consumer facing, software-enabled hardware products
Passion for and demonstrated proficiency in working with cross-functional hardware & software teams
Highly collaborative mindset and strong communication skills
Pay Disclosure:Salary Range/Hourly Rate for California Based Applicants:
$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 employees, their spouse or domestic partner, and children up to age 26. Coverage is effective on the first day of employment, and Rivian covers most of the premiums.Company Statements: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) Rivians 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.
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 whats 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:In this role, you will be a member of the Future Programs team, responsible for all embedded software & firmware development on select next generation products. You will partner with existing embedded software, mobile, cloud connectivity and information technology teams through all stages of program development, from concept to launch. In this role you will collaborate with dedicated HW and UX engineering teams to deliver powerful, unique and vertically integrated user experiences.Responsibilities:Development of wireless connectivity features across a range of associated protocols (BLE, LTE, GPS, NFC, UWB), interfacing with existing cloud infrastructure where applicable.
Lead the design and implementation of firmware running on a distributed embedded system with multiple microcontrollers, with a focus on optimizing power/energy consumption, security, and safety. Define system level power requirements and implementing low power modes of operation for each of the microcontroller. Early phases of firmware development will focus on hardware validation and testing, defining and implementing a system of secure updates, and manufacturing test support.
Expertise in various wireless communication protocols such as MQTT, HTTPS, Bluetooth Low Energy (BLE), and other wireless protocols, and the ability to integrate them into firmware designs while considering power efficiency. Experience with I2C, SPI, CAN, USB-PD, and other digital protocols will be paramount to success.
Optimize firmware for low-power operation, extending the battery life of IoT devices and supporting energy-efficient designs. Profile power consumption and identify opportunities for optimization on the submodule as well as system level.
Implement robust security measures within firmware to safeguard devices against potential threats, ensuring data integrity, authentication, and encryption protocols are in place. Familiarity with OTA implementation on distributed systems. Hands on experience working with RTOS, particularly Zephyr.
Develop comprehensive test plans and perform thorough testing to validate firmware functionality, stability, and performance under various conditions, including low power modes. Implement a robust CI/CD pipeline to ensure the team has access to the latest stable and development builds.
Work with cross functional group to determine hardware testing needs and support testing and validation effort. Familiarity with UDS or XCP protocols.
Development of HMI (human-machine interface) software features, including display functionality with core vehicle information and infotainment content.
Integration of user interfaces for hardware I/O including, but not limited to switches, knobs and other control mechanisms.
Partner with existing embedded software, mobile, connectivity and information technology teams to share common platforms and code base, where applicable.
Qualifications:
5+ years of experience in embedded software/firmware development, preferably with vertically integrated consumer products
Experience with high volume consumer products with internally developed connectivity features (IoT, OTA updates, etc)
Delivering software-enabled hardware products, including low-level firmware development (drivers, bootloaders)
Expert knowledge of embedded microprocessor tools and hardware peripherals
Proficiency in C/C++ and debugging embedded systems
BS in an engineering discipline, preferably Computer Science or Electrical Engineering
Familiarity with real-time operating system platforms, ideally in functional-safety critical applications
Familiarity with hardware/software architecture selection with cost and performance tradeoffs (OS, MCU, etc selection)
Established success in building, growing and developing fast paced, highly experienced software teams spanning multiple embedded disciplines
Experience with CI/CD & test automation applied to consumer facing, software-enabled hardware products
Passion for and demonstrated proficiency in working with cross-functional hardware & software teams
Highly collaborative mindset and strong communication skills
Pay Disclosure:Salary Range/Hourly Rate for California Based Applicants:
$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 employees, their spouse or domestic partner, and children up to age 26. Coverage is effective on the first day of employment, and Rivian covers most of the premiums.Company Statements: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) Rivians 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.