Linux Devices Software Engineer
Listed on 2026-01-01
-
Software Development
Embedded Software Engineer, Software Engineer
Linux Devices Software Engineer
Canonical - Jobs
Posted today
Location:
remote roles open in every time zone.
This role is one of our general tracks. Apply here for all engineering teams at Canonical who work on low-level system technology on autonomous devices across all seniority levels.
We hire careful and conscientious engineers who appreciate the challenge of memory, performance, battery and connectivity constrained code that has to work every time in an unreliable and unforgiving world, on x86, ARM or RISC‑V silicon.
Canonical Ubuntu is the leading Linux for software engineers, desktops, cloud and IoT. We bring open source to the world as a high‑performance, safe and secure platform for enterprise computing, software engineering, and connected devices.
These smart, connected devices have the potential to transform every industry. Classic Ubuntu – desktop or server – is widely used in embedded systems because of its developer focus and enterprise grade security maintenance. We partner with the world's most prominent silicon companies to optimise Ubuntu on their latest and greatest chips, as well as with major OEMs and ODMs (PC, servers and connected device manufacturers) to ensure that Ubuntu works perfectly on their hardware.
But while classic, 'deb' based Ubuntu is ideal for developers, it has too much variability for appliance or connected device environments, where you want to know exactly what the state of millions or billions of devices might be. So Canonical builds Ubuntu Core, a fully containerised version of Ubuntu that is mathematically precise and rigorously secure. We are working on additional solutions for even smaller devices.
We have several teams that focus on open source for embedded environments. We hire outstanding Linux software engineers with a passion for open source, innovation, cutting‑edge hardware and software technologies in general. You will be expected to make significant contributions through high‑quality design and code, and to develop your technical leadership.
These roles include:
- Ubuntu Core and snapd software development
- Silicon software and optimisation engineers
- Kernel driver and hardware enablement engineers
- Hardware‑centric Linux QA Engineers
- Hardware Certification Engineers
- Industrial IoT software engineers
- Networking software engineers (switching, routing, access and Smart
NICs)
At Canonical you will have the opportunity to engage with the broader open source community. We're looking for individuals who can help build a thriving community, contribute to a broad range of technologies, and contribute to the deployment of Ubuntu and Ubuntu Core across the widest range of devices.
What your day will look like- Work with the latest Linux kernel and open source technologies
- Deliver Ubuntu for the latest IoT and server‑class hardware platforms
- Integrate and maintain device‑oriented software stacks
- Write high‑quality, well‑designed software
- Collaborate proactively with other globally distributed teams
- Display technical leadership internally and within our external communities
- Help our customers ship their apps and SDKs on Ubuntu
- Build device OS images with Ubuntu Core, Desktop and Server
- Optimise the Ubuntu kernel and libraries for silicon‑specific capabilities
- Debug issues and produce high‑quality code to fix them
- Contribute to technical documentation to make it the best of its kind
- Discuss ideas and collaborate on finding good solutions
- Participate as technical lead on complex customer engagements involving complete system architectures from cloud to edge
- Work usually from home, with global travel 2 to 4 weeks for company events
- An exceptional academic track record from both high school and university
- Drive and a track record of going above‑and‑beyond expectations
- Undergraduate degree in Computer Science or STEM, or a compelling narrative about your alternative path
- Experience with Linux (Debian or Ubuntu preferred)
- Passion for Linux or embedded systems software (e.g. kernel, graphics, Yocto)
- Fluency in at least one of Golang, C, C++, or Rust
- Professional written and spoken English
- Excellent interpersonal skills, curiosity, flexibility, and…
(If this job is in fact in your jurisdiction, then you may be using a Proxy or VPN to access this site, and to progress further, you should change your connectivity to another mobile device or PC).