Back to jobs

Ubuntu Core Software Engineer

Home based - Middle East, Jeddah, Saudi Arabia

Redefine the Linux experience in the embedded environments with the smallest, most secure, and updatable operating system in the IoT market. This is an opportunity for a software engineer passionate about open source software, Linux, security, and the developer experience. This challenging role demands a high degree of technical skill with low-level operating systems, kernel, and device firmware.

Our mission is to allow everyone to build robust solutions in various fields including but not limited to IoT, automotive, and aviation using the next generation secure embedded Linux operating system in a simple solution. We define a reliable and secure set of device recovery mechanisms that enable device manufacturers to simplify and standardise the field operations for fleets of heterogeneous appliances. 

As an Ubuntu Core team member, you’ll be designing and implementing software that runs on various CPU architectures, such as ARM, RISC-V, and X86.  You will work on boot mechanisms, bootloaders, storage partition layout, device trees, kernel and services.

Build a rewarding, meaningful career working with the best and brightest people in technology at Canonical, a growing international software company.

What you'll do

  • Integrate diverse bootloaders and maintain gadget snaps
  • Write high quality code with unit tests to create new features
  • Debug Linux system level issues and produce high quality code to fix them
  • Collaborate proactively with a distributed team
  • Review code produced by other engineers
  • Discuss ideas and collaborate on finding good solutions
  • Work from home with global travel 2 to 4 times a year for internal and external events

Who you are

  • You love technology and working with brilliant people
  • You are curious, flexible, articulate, and accountable
  • You value soft skills and are passionate, enterprising, thoughtful, and self-motivated
  • You have a Bachelor’s or equivalent in Computer Science, STEM or similar degree
  • You have experience with C or Golang, and Shell
  • You have a solid understanding of Linux and a modern GNU/Linux distribution, Debian or Ubuntu preferred
  • You have personal or professional experience with Linux-capable devices such as Raspberry Pi
  • You have experience or interest in one or more low-level systems and security facilities such as:
    • Bootloaders in ARM and X86, such as piboot, uboot, grub-uefi
    • Systemd and units, udev, initrd, graphics
    • OS level firmware daemons and CLI applications
    • Linux security implementations - TPM, FDE, LUKS, HSM, etc.
  • You may have experience or knowledge of Yocto

What is Canonical?

Canonical is a growing international software company that works with the open-source community to deliver Ubuntu, “the world’s best free software platform”. Our services help businesses worldwide to reduce costs, improve efficiency and enhance security with Ubuntu.

We are proud to foster a workplace free from discrimination. Diversity of experience, perspectives, and background create a better work environment and better products. Whatever your identity, we will give your application fair consideration.

#LI-remote

#stack

Apply for this job

*

indicates a required field

Resume/CV*

Accepted file types: pdf, doc, docx, txt, rtf


Education

Select...
Select...
Select...

Select...
Select...
Select...

Please note that if you require any accommodation for travel that relates to a physical disability please do let us know during your hiring process and we will be happy to discuss your requirements further.

Universities around the world score degrees in different ways. Please indicate your result, or expected result if you are close to graduation, along with information about the grading system.

Select...
Select...
Select...
Select...

Please select your current location from the dropdown.

Select...

We're focused specifically on the last ten years, and only the portion of that since you left undergrad university. If you graduated three years ago, just count the number of companies you have worked for in those three years. If you graduated 25 years ago, just count the companies in the last ten years.

If you worked for a company which was acquired or renamed, then please count that as one company not two. Don't count any university jobs or internships. If you have your own company or do private contracting work in addition to your employment, please count that as one company.

Select...

This information is being requested to help us maintain equal opportunities, best practices and comply with legal requirements. The submission of this information is entirely voluntary. The information you provide will not be used in our decision making and will not subject you to any adverse treatment.