Embedded Systems Software Engineer

Leading Linux company that publishes Ubuntu, providing open source solutions for enterprise computing, software engineering, and connected devices.
Embedded
Mid-Level Software Engineer
Remote
3+ years of experience
Enterprise SaaS · Robotics

Description For Embedded Systems Software Engineer

Canonical, the company behind Ubuntu, is seeking embedded systems software engineers to work on cutting-edge open source technologies. This role spans multiple teams working on low-level system technology and embedded systems across various seniority levels. Engineers will work with the latest Linux kernel, RTOS, and open source technologies, focusing on memory, performance, battery, and connectivity-constrained code for x86, ARM, or RISC-V silicon.

The position offers the opportunity to work on Ubuntu Core, a containerized version of Ubuntu, and contribute to various embedded environment teams including IoT, robotics, and hardware enablement. Engineers will collaborate with global teams, engage with the open source community, and work on optimizing Ubuntu for various hardware platforms.

The role is fully remote with opportunities for global travel 2-4 weeks annually for company events. Canonical provides a comprehensive benefits package including learning and development budget, annual compensation reviews, and various support programs. The company values diversity and maintains a remote-first culture since 2004.

Ideal candidates should have strong academic backgrounds, experience with Linux systems, and proficiency in languages like Golang, C, C++, or Rust. This is an excellent opportunity for those passionate about embedded systems and open source technology to contribute to one of the world's leading Linux platforms.

Last updated 9 days ago

Responsibilities For Embedded Systems Software Engineer

  • 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
  • Debug issues and produce high-quality code to fix them
  • Contribute to technical documentation
  • Build device OS images with Ubuntu Core, Desktop and Server
  • Optimize the Ubuntu kernel and libraries for silicon-specific capabilities

Requirements For Embedded Systems Software Engineer

Go
Linux
Python
  • Exceptional academic track record from both high school and university
  • Undergraduate degree in Computer Science or STEM
  • 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
  • Excellent communication and presentation skills
  • Ability to travel twice a year for company events

Benefits For Embedded Systems Software Engineer

Education Budget
Parental Leave
Mental Health Assistance
  • 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
  • Priority Pass and travel upgrades for long haul company events
  • Distributed work environment with twice-yearly team sprints

Interested in this job?

Jobs Related To Canonical Embedded Systems Software Engineer

Ubuntu Enablement Engineer

Ubuntu Enablement Engineer position at Canonical, working with OEMs and silicon partners to optimize Ubuntu on various hardware platforms.

Embedded Systems Software Engineer

Join Canonical as an Embedded Systems Software Engineer to work on Ubuntu and open source technologies for IoT and connected devices.

Linux Kernel Engineer

Remote Linux Kernel Engineer position at Canonical, working on Ubuntu Linux kernel optimization for various SoC platforms.

Linux Kernel Engineer

Remote Linux Kernel Engineer position at Canonical, working on Ubuntu Linux kernel optimization for various SoC platforms.

Linux Kernel Engineer

Remote Linux Kernel Engineer position at Canonical, working on Ubuntu Linux kernel optimization for various SoC platforms.