Ubuntu Core Software Engineer
Role details
Job location
Tech stack
Job description
and developer experience, requiring high technical skill with low-level OS, kernel, and device firmware. Our mission is to enable building robust solutions across IoT, automotive, and aviation using a next-gen secure embedded Linux OS. We focus on reliable, secure device recovery mechanisms to simplify field operations for heterogeneous device fleets. As part of the Ubuntu Core team, you'll design and implement software across various CPU architectures such as ARM, RISC-V, and x86, working on boot mechanisms, bootloaders, storage layouts, device trees, kernel, and services. Build a rewarding career with top-tier talent at Canonical, a growing international software company. Location: This role is remote within the EMEA region The role entails: * Writing high-quality code with unit tests to develop new features * Debugging Linux system-level issues and producing fixes * Proactively collaborating with a distributed team * Reviewing code from other engineers * Discussing ideas and
Requirements
collaborating on solutions * Integrating diverse bootloaders and maintaining gadget snaps * Working from home with global travel 2-4 times a year for events What we are looking for in you: * A passion for technology and working with talented people * Curious, flexible, articulate, and accountable * Valuing soft skills; being passionate, enterprising, thoughtful, and self-motivated * Bachelor's or equivalent in Computer Science, STEM, or similar * Experience with C or Golang, and Shell scripting * Solid understanding of Linux, preferably Debian or Ubuntu * Experience with Linux-capable devices like Raspberry Pi * Interest or experience in low-level systems and security facilities such as: o Bootloaders (ARM/X86), e.g., piboot, uboot, grub-uefi o Systemd, udev, initrd, graphics o Firmware daemons and CLI applications o Linux security (TPM, FDE, LUKS, HSM) * Experience or knowledge of Yocto is a plus What we offer colleagues: * Distributed work