Canonical - We deliver open source to the world faster, more securely, and more cost-effectively than any other company. We develop Ubuntu, the world’s most popular enterprise Linux from cloud to edge, together with a passionate global community of 200,000 contributors. Ubuntu means 'humanity to others. We chose it because it embodies the generosity at the heart of open source, the new normal for platforms and innovation. Together with a community of 200,000, we publish an operating system that runs from the tiny connected devices up to the world's biggest mainframes, the platform that everybody uses on the public cloud, and the workstation experience of the world's most productive developers. Secure and reliable, elegant and intuitive, and open for innovation - Ubuntu is the future of open source, which is why it's the fastest-growing Linux in the world despite already being the most widely deployed.
This role is one of our general tracks. Apply here for all engineering teams at Canonical who work on low-level system technology and embedded systems, 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 and RTOS 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
Robotics engineers
Industrial IoT software engineers
Networking software engineers (switching, routing, access and SmartNICs)
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
Based on the first round of interviews we identify specific teams where you might be an excellent fit, and conduct second round interviews with those teams. Our engineers:
Work with the latest Linux kernel, RTOS, 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
Requirements
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
Passion for embedded systems software (e.g. kernel, graphics, Yocto, RTOS)
Fluency in at least one of Golang, C, C++, or Rust
Professional written and spoken English
Experience with Linux (Debian or Ubuntu preferred)
Excellent interpersonal skills, curiosity, flexibility, and accountability
Passion, thoughtfulness, and self-motivation
Excellent communication and presentation skills
Result-oriented, with a personal drive to meet commitments
Ability to travel twice a year, for company events up to two weeks each
Skills:
Additional skills that you might also bring:
Experience with Debian/Ubuntu or other distro packaging
Understanding of build systems and toolchains, including for cross-compilation
Experience with firmware, uboot, UEFI, ACPI, DSDT, or boot loaders
Experience with power management on PCI ASPM, SATA ALPM, low power profiles
Computer architecture knowledge of x86, ARM, RISC-V
Experience in board design, bring up, and validation
Experience with electrical engineering design tools (e.g. schematic capture, layout)
Familiarity with Ubuntu development model
Performance engineering and security experience
Shell or Python scripting skills
What we Offer you
We consider geographical location, experience, and performance in shaping compensation worldwide. We revisit compensation annually (and more often for graduates and associates) to ensure we recognise outstanding performance. In addition to base pay, we offer a performance-driven annual bonus.
We provide all team members with additional benefits, which reflect our values and ideals. We balance our programs to meet local needs and ensure fairness globally.
Distributed work environment with twice-yearly team sprints in person
Personal learning and development budget of USD 2,000 per year
Annual compensation review
Recognition rewards
Annual holiday leave
Maternity and paternity leave
Employee Assistance Programme
Opportunity to travel to new locations to meet colleagues
Priority Pass, and travel upgrades for long haul company events