Search

Embedded Software Engineer

Canaan Inc.
locationSan Francisco, CA, USA
PublishedPublished: 6/14/2022
Technology
Full Time

Job Description

About the Role

Canaan Inc. is a leading RISC-V chip design company powering the world's most efficient Bitcoin mining machines. We're looking for a Senior Linux BSP Software Engineer — Mining Machine Software to lead the embedded software stack for our mining products. This role sits at the intersection of low-level BSP and high-performance distributed computing — you'll own the communication layer between mining machines and remote computing centers, optimize mining firmware performance, and drive integration with smart home device compute offloading where applicable.



Location: US Hybrid · San Francisco Bay Area preferre

dResponsibilitie

  • sMining Machine Embedded System Architecture — Lead the overall software architecture for Canaan mining machine products on RISC-V based SoCs; design for multi-tasking, real-time performance, and high reliability under sustained hash rate loa
  • dBoard Bring-up & BSP — Drive BSP development and maintenance for Canaan RISC-V mining chips; port and optimize U-Boot and Linux kernel for mining form factors; own boot time, security, and reliabilit
  • yDistributed Computing Communication — Design and maintain long-connection communication protocols with remote distributed computing centers; implement task dispatch, dynamic frequency tuning, throughput reporting, and heartbeat maintenance; optimize for high-concurrency, long-lived TCP connection
  • sIntelligent Control & Core Features — Implement precise control algorithms, multi-level power regulation, and comprehensive safety protection logic; optimize mining efficiency under power, thermal, and noise constraint
  • sHeterogeneous Computing Integration — Develop low-level drivers and task coordination for mining ASICs / co-processors integrated alongside RISC-V cores; implement IPC between main processor and dedicated compute unit
  • sSystem Optimization & Debugging — Performance analysis and bottleneck optimization (hash rate, power efficiency, thermal management); low-level issue troubleshooting (boot, memory, peripherals); chip validation and mass production yield improvemen
  • tSystem Security & Performance — Implement secure boot, device identity authentication, and communication encryption for mining fleet management; continuously optimize power consumption and memory footprin
  • tSmart Home Compute Offloading — Where applicable, enable mining machines to serve as distributed compute nodes supporting smart home device workloads; architect efficient task offloading and result return mechanism
  • sOpen Source Contribution — Drive and maintain open-source projects on GitHub; contribute upstream patches to Linux kernel, U-Boot, and related open-source project
  • sEngineering Collaboration — Define software architecture and technical roadmap; mentor junior engineers; work closely with hardware (RF, power, thermal), cloud infrastructure, and product teams; lead technical design review

sRequirement

sEssentia

  • lBachelor's degree or above in Computer Science, Electronics, Automation, or related fiel
  • d3+ years of embedded development experienc
  • eAt least one complete product cycle from concept to mass productio
  • nDeep familiarity with RISC-V or ARM Cortex series developmen
  • tExpert-level proficiency in Linux kernel principles and driver developmen
  • tProven track record with U-Boot porting and debuggin
  • gActive GitHub profile with proven open-source contribution histor
  • yHands-on experience with: UART, SPI, I2C · NAND/NOR Flash · Ethernet (MAC/PHY) · WiFi/BLE module
  • sStrong understanding of TCP/IP, MQTT, HTTP protocol stacks; experienced with long-connection, high-concurrency network communicatio
  • nExperience building up CD/CI pipelin
  • eExperience with open source projec

tNice to Hav

  • eExperience in Bitcoin miner or high-performance computing chip developmen
  • tExperience with distributed computing task scheduling or remote compute offloadin
  • gKnowledge of heterogeneous computing (MCU/DSP/ASIC/FPGA co-development
  • )Experience with RTOS (FreeRTOS / RT-Thread
  • )Familiar with Canaan RISC-V MCU development (K210, K230
  • )Knowledge of Yocto / OpenEmbedded build syste
  • mPatches or drivers merged into mainline Linux kernel, U-Boot, or other well-known open-source project

sTechnical Stac

k| Hardware | RISC-V / ARM Cortex-A / M

|| OS | Linux (Kernel 4.14+) / FreeRTOS / RT-Thread

|| Bootloader | U-Boot

|| Languages | C / 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

|| Network | TCP/IP, MQTT, HTTPs, long-connection protocols


|
What We Off

  • erCompetitive salary and equity compensati
  • onOpportunity to work on world-leading Bitcoin mining hardware powered by Canaan RISC-V chi
  • psOpen and collaborative technical team culture with mentorship opportuniti
  • esFlexible working hours and remote work optio
  • nsConference attendance and training suppo
  • rtGitHub-backed development workflow with emphasis on open-source collaborati


on

Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...