Canaan Inc. is a leading RISC-V chip design company powering Bitcoin mining machines and next-generation smart home devices. We're looking for Junior Linux BSP Software Engineers to join our BSP team, supporting both mining and smart home product lines — a great opportunity to grow your career in embedded systems with hands-on hardware exposure from day one.
Location: US Hybrid · San Francisco Bay Area preferred
Responsibilities
Board Bring-up & Bootloader — Support BSP development and maintenance for Canaan RISC-V based chips (K210, K230, K230M, and upcoming SoCs); assist in U-Boot porting and debugging; learn and apply boot time and reliability optimization techniques
Linux Kernel Development — Contribute to Linux kernel customization for embedded SoCs; learn kernel subsystems (memory management, interrupt handling, power management); grow familiarity with upstream kernel development
Device Driver Development — Implement and debug drivers with guidance from senior engineers
◦Storage: NAND/NOR Flash with filesystem support (UBI, SquashFS, ext4)
MCU integration and dual-core heterogeneous system IPC
RTOS / Bare-metal Development — Learn RTOS application development; assist with MCU firmware design and debugging
System Optimization & Debugging — Participate in performance analysis and issue troubleshooting (boot, memory, peripherals); support chip validation and reference design work
Open Source Contribution — Get involved in open-source projects on GitHub; start contributing patches to Linux kernel, U-Boot, or related projects with mentorship from the team
Collaboration — Document hardware interfaces, driver designs, and bring-up procedures; work closely with senior engineers, hardware teams, SDK team, and application teams
Requirements
Essential
Bachelor's degree or above in Computer Science, Electronics, Automation, or related field
0–3 years of embedded development experience (internships or academic projects count)
Basic familiarity with RISC-V or ARM architecture
Good understanding of Linux kernel principles and driver development fundamentals
Experience with U-Boot basics (porting or debugging academic projects is a plus)
Interest in or early steps toward open-source contribution on GitHub
Hands-on experience with at least 2 of the following: UART, SPI, I2C · NAND/NOR Flash · Ethernet (MAC/PHY) · WiFi/BLE modules
Nice to Have
Experience with RTOS (FreeRTOS / RT-Thread)
Familiar with Canaan RISC-V MCU development (K210, K230)
•Undergraduate project or internship involving embedded Linux or kernel/driver development
Knowledge of Yocto / OpenEmbedded / Buildroot build system
Personal GitHub projects or open-source contributions (even small ones)
Technical Stack
| Hardware | RISC-V / ARM Cortex-A / M |
| OS | Linux (Kernel 4.14+) |
| Bootloader | U-Boot |
| Languages | C / Python / Shell |
| Toolchain | GCC (riscv64-unknown-elf) |
| Debug | GDB / J-Link / OpenOCD |
| Version Ctrl | Git / GitHub |
| Open Source | Linux Kernel, U-Boot, upstream contributions |
What We Offer
Competitive salary and equity compensation
Mentorship from senior engineers and clear career growth path in RISC-V chip development
Hands-on hardware exposure from day one — real silicon, real products
Open and collaborative technical team culture
Flexible working hours and remote work options
Conference attendance and training support
GitHub-backed development workflow with emphasis on open-source collaboration
Seniority level
Entry level
Employment type
Full-time
Job function
Engineering and Science
Industries
Computer Hardware Manufacturing, Computers and Electronics Manufacturing, and Semiconductor Manufacturing
Referrals increase your chances of interviewing at Canaan Inc. by 2x