almost 2 years ago
Responsibilities
- Provide software and system engineering services for OEM and ODM customers.
- Work with partners on platform bring-up.
- Collaborate with project managers and Field and QA engineers to identify, triage, and fix critical problems.
- Work with upstream projects to find and apply bug fixes.
- Conduct root cause analysis and organize reproducible technical details and results.
- Facilitate communication among Ubuntu, firmware, and hardware engineering teams.
Requirements
- Bachelor’s or higher degree in STEM, preferably Computer Science or Electrical Engineering.
- Familiarity with C, Python, Bash, Linux boot processes, Linux kernel architecture, bootloaders, and system-level architecture.
- Experience with bootloader development such as U-Boot and software development on Arm or non-x86 platforms.
- Linux debugging and problem-resolution abilities.
- Fluent written and spoken English and Mandarin Chinese.
- Desirable experience with system firmware, U-Boot, UEFI, ACPI, DSDT, bootloaders, and device firmware.
- Desirable experience debugging PCI ASPM, SATA ALPM, and low-power profiles.
- Desirable experience with board design, bring-up, validation, electrical engineering design tools, and computer architectures including x86, ARM, and RISC-V.
- Familiarity with the Ubuntu development model and shell or Python scripting.
Benefits
- Personal learning and development budget
- Annual compensation review
- Recognition rewards
- Annual leave
- Priority Pass for travel
- Occasional international travel to the EU, USA, Taiwan, and China
About Canonical
Canonical, the publisher of Ubuntu, provides open source security, support and services. Our portfolio covers critical systems, from the smallest devices to the largest clouds, from the kernel to containers, from databases to AI. With customers that include top tech brands, emerging startups, governments and home users, Canonical delivers trusted open source for everyone.