Ubuntu Core Software Engineer

canonical· Devices Engineering
Apply Now ↗
📍 Home based - EMEA

About this role

Canonical is a leading provider of open source software and operating systems to the global enterprise and technology markets. Our platform, Ubuntu, is very widely used in breakthrough enterprise initiatives such as public cloud, data science, AI, engineering innovation, and IoT. Our customers include the world's leading public cloud and silicon providers, and industry leaders in many sectors. The company is a pioneer of global distributed collaboration, with 1200+ colleagues in 75+ countries and very few office-based roles. Teams meet two to four times yearly in person, in interesting locations around the world, to align on strategy and execution.

The company is founder-led, profitable, and growing.

We are hiring a Ubuntu Core Software Engineer to 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.

Location: This role will be based remotely in the EMEA region

The role entails

  • 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
  • Integrate diverse bootloaders and maintain gadget snaps
  • Work from home with global travel 2 to 4 times a year for internal and external events

What we are looking for in you

  • 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 interest in learning or experience 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 we offer colleagues

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 recognize outstanding performance. In addition to base pay, we offer a performance-driven annual bonus or commission. 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
  • Team Member Assistance Program & Wellness Platform
  • Opportunity to travel to new locations to meet colleagues
  • Priority Pass and travel upgrades for long-haul company events

About Canonical

Canonical is a pioneering tech firm at the forefront of the global move to open source. As the company that publishes Ubuntu, one of the most important open-source projects and the platform for AI, IoT, and the cloud, we are changing the world of software. We recruit on a global basis and set a very high standard for people joining the company. We expect excellence; in order to succeed, we need to be the best at what we do. Most colleagues at Canonical have worked from home since our inception in 2004.​ Working here is a step into the future and will challenge you to think differently, work smarter, learn new skills, and raise your game.

Canonical is an equal opportunity employer

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

 

Frequently Asked Questions

Is the salary disclosed for the Ubuntu Core Software Engineer position at canonical?
The salary for this Ubuntu Core Software Engineer role at canonical is not publicly listed. Click "Apply Now" to learn more about the compensation package on their official careers page.
Where is the Ubuntu Core Software Engineer position at canonical located?
This Ubuntu Core Software Engineer role at canonical is based in Home based - EMEA. The position is listed as on-site or hybrid. Check the full job description or apply directly to confirm the work arrangement.
Which team or department does the Ubuntu Core Software Engineer at canonical belong to?
This Ubuntu Core Software Engineer position is part of the Devices Engineering department at canonical. See the full job description for more information about the team structure and responsibilities.
How do I apply for the Ubuntu Core Software Engineer position at canonical?
Click the "Apply Now" button on this page. You will be redirected to canonical's official application portal hosted on greenhouse where you can submit your application directly.
When was the Ubuntu Core Software Engineer job at canonical posted?
This Ubuntu Core Software Engineer position at canonical was posted on Jun 10, 2021. Apply as soon as possible — early applications are often reviewed first.
Ubuntu Core Software Engineer
canonical
Apply for this role ↗

You'll be redirected to canonical's official application page on Greenhouse.