Advisory Linux Systems Software Engineer
Ricoh USA, Inc. · Boulder, CO · 1 mo ago
On-siteConsultingFull-time
About the Role
We are seeking a Advisory Linux Systems Software Engineer to join our Control Unit Development team in Boulder, Colorado. This role focuses on low-level Linux systems software, working close to the kernel and core OS subsystems to power high-performance printing platforms across multiple hardware environments.
Responsibilities
- Design and develop low-level Linux systems software and platform components.
- Extensively work with Linux kernel subsystems, drivers, and system initialization flows.
- Contribute to system architecture, bring-up, debugging, and performance optimization.
- Develop in C/C++, with supporting Python/Bash scripting.
- Diagnose and resolve complex system-level issues across software and hardware boundaries.
- Develop and execute system-level validation and test strategies.
- Own the process for BIOS/firmware updates for deployed systems, including:
- Building and validating firmware images,
- Creating bootable "firmware" USB media for manufacturing and field updates,
- Ensuring safe rollout and compatibility across hardware revisions.
- Collaborate with manufacturing and field teams to support system updates and issue resolution.
- Develop and leverage AI-assisted development tools such as Claude Code to improve productivity and code quality.
- Produce high-quality technical documentation and support downstream teams.
Requirements
- 5+ years of experience developing low-level Linux systems software.
- Strong proficiency in C/C++.
- Experience with Python and/or Bash scripting.
- Deep hands-on experience with Linux internals and OS-level development.
- Experience with system bring-up, debugging, and hardware/software integration.
- Strong debugging and analytical skills in complex, multi-layered systems.
Preferred Qualifications
- Experience with firmware, BIOS, or system-level update mechanisms.
- Experience creating bootable media or system recovery/updatetools.
- Experience with build systems and toolchains.
- Knowledge of network security principles.
- Experience working across distributed/globalteams.
- Familiarity with virtualization or containerization technologies.
- Exposure to printing or imaging systems (nice-to-have).
Education
Bachelor’s or Master’s degree in Computer Science, Computer Engineering, Electrical Engineering, or related field.