FlexHired LogoFlexHired
Logo of Canonical

Canonical

Ubuntu Core Software Engineer

Job Summary

The role involves designing and implementing software for embedded Linux systems, with a focus on security, boot mechanisms, and device firmware for platforms like ARM and x86. Candidates should have experience with C, Golang, Shell, Linux, and low-level systems such as bootloaders and security features. The position requires collaboration within a distributed team, debugging system issues, and working on hardware architectures relevant to IoT and embedded devices. This opportunity offers remote work, travel, professional growth, and benefits aligned with supporting a global, innovative workforce.

Required Skills

Golang
Linux
C Programming
Kernel Development
Embedded Linux
Shell scripting
systemd
Device firmware
Bootloaders
Udev
Security facilities
Low-level systems
Hardware architectures

Benefits

Travel Opportunities
Annual Bonus
Performance Bonus
Maternity Leave
Paternity Leave
Learning and Development Budget
Recognition Rewards
Wellness Platform
Annual holiday leave
Team Member Assistance Program
Performance Review

Job Description

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

Interested in this job?

Application deadline: Open until filled

Logo of Canonical

Canonical

Canonical makes open source secure, reliable and easy to use, providing support for Ubuntu and a portfolio of enterprise-grade technologies. Founded in 2004, Canonical operates globally with team members in over 80 countries.

See more jobs
Date PostedMarch 28th, 2025
Job TypeFull Time
LocationHome based - EMEA
SalaryCompetitive rates
Exciting remote opportunity (requires residency in Africa, Europe) for a Ubuntu Core Software Engineer at Canonical. Offering competitive salary (full time). Explore more remote jobs on FlexHired!

Safe Remote Job Search Tips

Verify Employer Thoroughly

Research the company's identity thoroughly before applying. Check for a professional website with contacts, active social media, and LinkedIn profiles. Verify details across platforms and look for reviews on Glassdoor or Trustpilot to confirm legitimacy.

Never Pay to Get a Job

Legitimate employers never require payment for applications, training, background checks, or equipment. Always reject upfront payment requests or demands for bank details, even if they claim it's for purchasing necessary work gear on your behalf.

Safeguard Your Personal Information

Protect sensitive data like SSN, bank details, or ID copies. Share this only after accepting a formal, written job offer. Ensure it's submitted via a secure company system or portal, never through insecure channels like standard email attachments.

Scrutinize Communication & Interviews

Watch for communication red flags: poor grammar, generic emails (@gmail), vague details, or undue pressure. Be highly suspicious of interviews held only via text or chat apps; legitimate companies typically use video or phone calls.

Beware of Unrealistic Offers

If an offer's salary or benefits seem unrealistically high for the work involved, be cautious. Research standard pay for similar roles. Offers that appear 'too good to be true' are often scams designed to lure you into providing information or payment.

Insist on a Formal Contract

Always secure and review a formal, written job offer or employment contract before starting work or sharing final personal details. Ensure it clearly defines your role, compensation, key terms, and conditions to avoid misunderstandings or scams.

Related Jobs

Subscribe Newsletter

Never miss a remote job opportunity. Subscribe to our newsletter today and receive exclusive job alerts, career advice, and industry insights delivered straight to your inbox.