Jobs and Careers
RI
Member of Technical Staff (#93331)
RivosSanta Clara, United Statesfull_timeVerifiedPosted 5 Sept 2025
About the role
Responsible for developing drivers for various IP blocks in embedded environments and in theLinux kernel. Work with the silicon team to craft specifications for future chips and buildsoftware to run on these new chips and boards. Work with an optimization team to design andimplement software/firmware solutions optimized for real-time performance, power efficiency,or specific computational tasks, including real-time throughput enhancement and computationoffload techniques. Aiding pre-silicon design verification by developing and deploying firmwarebased initialization solutions. Debug real time systems with limited visibility, working hands-onwith development boards and lab equipment. Implement firmware/software solutions involvingindustry standard interfaces and protocols such as SPI, I2C, and potentially others like DDR,PCIe, I3C based on project needs. Develop and maintain software utilizing C, C++, and Pythonprogramming languages within a version-controlled environment. Utilize containerizationtechnologies (e.g., Docker) for development, testing, or deployment workflows related tofirmware interaction or simulation. Apply knowledge of machine learning or deep learningconcepts to optimize firmware behavior, performance, or related data processing tasks.
Education:
- Master’s or foreign equivalent in Electrical Engineering, Computer Engineering, or related field
Experience:
- 1 year of experience in job offered or related occupation.
Special Requirements: Must have at least 1 year of prior work experience in each of the following:
- 1. Developing software solutions utilizing real-time throughput optimization or computation offload
- techniques.
- 2. Developing C++ based server applications, including utilizing containerization (e.g., Docker) and
- technologies for graphics API interaction in headless environments.
- 3. Utilizing multi-threading and message queueing for asynchronous Inter-Process Communication
- (IPC).
- 4. Experience with packet serialization (using Protobuf) for client-server communication.
- 5. Implementing packet serialization (e.g., Protobuf) and video frame compression techniques for client-
- server or inter-component communication.
- 6. Optimizing Deep Learning models (e.g., CNNs) or applying machine learning techniques for
- embedded systems or specialized hardware applications.
- 7. Experience with full-stack software development principles and practices.
Apply for this role
Generate a tailored application kit with a matched cover letter, interview prep, and CV highlights — in under 60 seconds.
Apply Now →Generate Application KitFree account required — sign up in 30s