Embedded Linux Software Engineer

5 months ago


London, United Kingdom Canonical Full time

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.

Location: we have remote roles open in every time zone.

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 

What we are looking for in you

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

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, 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

  • London, Greater London, United Kingdom Canonical Full time

    About the RoleWe are seeking a highly skilled Linux software engineer to join our team at Canonical, specializing in embedded systems. As an embedded Linux software engineer, you will be responsible for designing, developing, and maintaining software for our embedded Linux products.Key ResponsibilitiesDesign and develop software for embedded Linux...


  • London, Greater London, United Kingdom Canonical Full time

    About CanonicalCanonical is a leading company in the development of open-source software, with a strong focus on Linux and Ubuntu. We are seeking a highly skilled Embedded Linux Software Engineer to join our team.Job SummaryWe are looking for a talented software engineer to work on the development of Ubuntu Core and Snapd. The ideal candidate will have...


  • London, Greater London, United Kingdom Canonical Full time

    Embedded Systems Software Engineer at CanonicalWe are seeking a highly skilled Embedded Systems Software Engineer to join our team at Canonical. As a key member of our team, you will be responsible for designing, developing, and testing software for our embedded systems.As an Embedded Systems Software Engineer at Canonical, you will be working with our team...


  • London, Greater London, United Kingdom Canonical Full time

    Job DescriptionCanonical is seeking a highly skilled Embedded Linux Software Engineer to join our team. As a key member of our engineering team, you will be responsible for designing, developing, and testing software for our embedded systems.Key Responsibilities:Design and develop software for embedded systems using Linux and other open-source...


  • London, Greater London, United Kingdom KO2 Embedded Recruitment Solutions Ltd Full time

    Software Engineer RoleWe are seeking a skilled and experienced Software Engineer to join our team at KO2 Embedded Recruitment Solutions Ltd. As a Software Engineer, you will be responsible for designing, developing, and maintaining software solutions that are used across multiple industries.Key Responsibilities:Design and Development: Design and develop...


  • London, Greater London, United Kingdom KO2 Embedded Recruitment Solutions Ltd Full time

    Software Engineer RoleWe are seeking a skilled and experienced Software Engineer to join our team at KO2 Embedded Recruitment Solutions Ltd. As a Software Engineer, you will be responsible for designing, developing, and maintaining software solutions that are used across multiple industries.Key Responsibilities:Design and Development: Design and develop...


  • London, Greater London, United Kingdom Canonical Full time

    About the RoleWe are seeking an exceptional Embedded Linux Software Engineer to join our team at Canonical. As a key member of our engineering team, you will be responsible for developing and maintaining the Linux kernel and related software for our embedded systems.Key ResponsibilitiesDevelop and maintain the Linux kernel and related software for our...


  • London, Greater London, United Kingdom Canonical Full time

    About the RoleWe are seeking an exceptional Embedded Linux Software Engineer to join our team at Canonical. As a key member of our engineering team, you will be responsible for developing and maintaining the Linux kernel and related software for our embedded systems.Key ResponsibilitiesDevelop and maintain the Linux kernel and related software for our...


  • London, Greater London, United Kingdom Canonical Full time

    About the RoleWe are seeking an exceptional Embedded Linux Software Engineer to join our team at Canonical. As a key member of our engineering team, you will be responsible for developing and maintaining the Linux kernel and related software for our embedded systems.Key ResponsibilitiesDevelop and maintain the Linux kernel and related software for our...


  • London, Greater London, United Kingdom Canonical Full time

    About the RoleWe are seeking an exceptional Embedded Linux Software Engineer to join our team at Canonical. As a key member of our engineering team, you will be responsible for developing and maintaining the Linux kernel and related software for our embedded systems.Key ResponsibilitiesDevelop and maintain the Linux kernel and related software for our...


  • London, Greater London, United Kingdom Canonical Group Ltd Full time

    Transform the Linux Experience in Embedded EnvironmentsRedefine 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 senior software engineer passionate about open source software, Linux, security, and the developer experience.Our MissionOur mission is...


  • London, Greater London, United Kingdom Canonical Group Ltd Full time

    Transform the Linux Experience in Embedded EnvironmentsRedefine 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 senior software engineer passionate about open source software, Linux, security, and the developer experience.Our MissionOur mission is...


  • London, Greater London, United Kingdom Canonical Group Ltd Full time

    Redefine the Linux experience in the embedded environments with the smallest, most secure, and updatable operating system in the IoT market. As a senior software engineer, you will 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...


  • London, Greater London, United Kingdom Canonical Full time

    Transform the Future of Embedded LinuxCanonical is seeking a seasoned technical leader to redefine the embedded Linux experience. As an Embedded Linux Technical Lead, you will shape the future of Linux from the smallest systems to desktops, leveraging your expertise in open source software, Linux, containers, security, and the developer experience.Key...


  • London, Greater London, United Kingdom Canonical Full time

    At Canonical, we're seeking a talented Embedded Linux Technical Lead to redefine the embedded Linux experience. This is an exciting opportunity for a technical leader passionate about open source software, Linux, containers, security, and the developer experience to shape the future of Linux from the smallest systems up to desktops.Our mission is to empower...


  • London, United Kingdom IC Resources Full time

    Job DescriptionJoin a growing AI & Networking start-up - London, Hybrid Working ModelThis growing start-up are committed to building disruptive technologies for AI and Machine Learning. Developing innovative solutions, this start-up aims to speed up training and inference whilst mitigating energy consumption. Having recently appointed a new Director of...


  • London, Greater London, United Kingdom nGenium Full time

    Lead Embedded Software EngineernGenium is seeking a highly skilled Lead Embedded Software Engineer to join our team in Surrey. As a key member of our engineering team, you will be responsible for delivering high-quality software solutions for our exciting new range of products.Key Responsibilities:Take ownership of the full feature life cycle, from...


  • London, Greater London, United Kingdom nGenium Full time

    Lead Embedded Software EngineernGenium is seeking a highly skilled Lead Embedded Software Engineer to join our team in Surrey. As a key member of our engineering team, you will be responsible for delivering high-quality software solutions for our exciting new range of products.Key Responsibilities:Take ownership of the full feature life cycle, from...


  • London, United Kingdom IC Resources Full time

    Embedded Software Engineer - London, circa once a week onsite Join a leader within fire safety, fire suppression and fire mitigation. This company focuses on creating effective, efficient, and environmentally friendly fire protection solutions - given the success of their latest product, they're now looking to grow out their software development function...


  • London, Greater London, United Kingdom Playtech Full time

    Join Our Team as a Senior Embedded Software EngineerWe are seeking a highly skilled Senior Embedded Software Engineer to join our team at Playtech, a leading technology company in the gambling industry. As a key member of our Casino unit, you will be responsible for designing and developing embedded systems that connect electronic gaming machines to our...