Talent.com
Linux Devices Software Engineer

Linux Devices Software Engineer

CanonicalWorkFromHome, Gauteng, South Africa
30+ days ago
Job description

Overview

Join to apply for the Linux Devices Software Engineer role at Canonical .

Canonical Cape Town, Western Cape, South Africa.

This role is one of our general tracks. Apply here for all engineering teams at Canonical who work on low-level system technology on autonomous devices 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 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)

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

What your day will look like

  • Work with the latest Linux kernel 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
  • Experience with Linux (Debian or Ubuntu preferred)
  • Passion for Linux or embedded systems software (e.g. kernel, graphics, Yocto)
  • Fluency in at least one of Golang, C, C++, or Rust
  • Professional written and spoken English
  • 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

  • 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
  • Employee Assistance Programme
  • 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 on a daily basis. 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. Canonical has been a remote-first company since its 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.

    Seniority level

  • Entry level
  • Employment type

  • Full-time
  • Job function

  • Engineering and Information Technology
  • Industries

  • Software Development
  • #J-18808-Ljbffr

    Create a job alert for this search

    Software Engineer • WorkFromHome, Gauteng, South Africa

    Related jobs
    • Promoted
    DevOps Linux Engineer - Johannesburg – R1m PA

    DevOps Linux Engineer - Johannesburg – R1m PA

    E-MergeJohannesburg, South Africa
    We''re building systems that move money at the speed of thought, and we need someone bold enough to automate everything.Demonstrable excellent Linux skills, including system administration, trouble...Show moreLast updated: 30+ days ago
    • Promoted
    • New!
    Embedded Software Engineer - Protocols

    Embedded Software Engineer - Protocols

    E&D RecruitersPretoria, South Africa
    Embedded Software Developer (Protocols).BEng Computer Engineering or BSc Computer Science, with an interest in communication protocol development. Documentation, design, implementation, and qualific...Show moreLast updated: 12 hours ago
    • Promoted
    Software Engineer

    Software Engineer

    Network RecruitmentJohannesburg, South Africa
    Competitive pay, medical aid, pension, life cover, and bi-annual bonuses.Clear development plan, learning opportunities, and technical excellence. Hybrid model (3 days in office), daily lunches, and...Show moreLast updated: 30+ days ago
    • Promoted
    Firmware Embedded - Software Engineer

    Firmware Embedded - Software Engineer

    JenRec Recruitmentcenturion, Gauteng, South Africa
    This is an excellent opportunity for a driven engineer to work in a multidisciplinary, high-tech environment with a focus on. Design, develop, and test firmware for embedded systems in custom hardwa...Show moreLast updated: 30+ days ago
    • Promoted
    Software Engineer

    Software Engineer

    Salix RecruitmentJohannesburg, South Africa
    An exciting opportunity exists for an.Intermediate Software Engineer.This role combines hands-on development with team leadership, making it ideal for an individual who thrives in a collaborative e...Show moreLast updated: 30+ days ago
    • Promoted
    Systems Software Engineer

    Systems Software Engineer

    Liham Consulting Pty (Ltd)Johannesburg, South Africa
    Project managing all elements of software development .Delivering high quality standards consistently and accurately.Using strong problem-solving skills to identify issues and implementing effectiv...Show moreLast updated: 30+ days ago
    • Promoted
    Senior Software Engineer

    Senior Software Engineer

    E&D RecruitersPretoria, South Africa
    Minimum requirements and experience : .BEng (Electronic or Computer Engineering).Master's degree will be beneficial.Comfortable acting as point of contact for international clients.Leading the softwa...Show moreLast updated: 30+ days ago
    • Promoted
    • New!
    DSP Software Engineer

    DSP Software Engineer

    E&D RecruitersPretoria, South Africa
    Minimum Requirements and requirements : .Electronic Engineering) or BEng / BSc (Computer Engineering).DSP development processes and tools. Developing embedded applications with C++.Waveform design, modu...Show moreLast updated: less than 1 hour ago
    • Promoted
    Software Engineer

    Software Engineer

    Henred FruehaufGermiston, South Africa
    We're seeking a talented Software Engineer to join our dynamic development team.You'll work on cutting-edge projects, collaborate with cross-functional teams. Design, develop, and maintain robust we...Show moreLast updated: 30+ days ago
    • Promoted
    Software Engineer – Midrand / Semi -Remote – R600 PH

    Software Engineer – Midrand / Semi -Remote – R600 PH

    E-MergePretoria, South Africa
    Remote
    Were looking for a talented and motivated.In this role, youll design, develop, test, and maintain software solutions that are scalable, efficient, and user centric. Youll collaborate with cross-func...Show moreLast updated: 30+ days ago
    • Promoted
    Software Engineer

    Software Engineer

    SHARON NUROCK RECRUITMENT CCMidrand, South Africa
    As a Software Engineer with Electrical knowledge, you will play a crucial role in developing cutting-edge software solutions that integrate with electrical components. Degree or National Diploma in ...Show moreLast updated: 30+ days ago
    • Promoted
    Linux Systems Engineer – Sandton – R780k PA

    Linux Systems Engineer – Sandton – R780k PA

    E-MergeJohannesburg, South Africa
    Master the Core Infrastructure Behind a Leading Digital Production Studio.Our client is a cutting-edge digital production studio at the forefront of media, technology, and creativity.They build and...Show moreLast updated: 30+ days ago
    • Promoted
    Firmware Software Engineer

    Firmware Software Engineer

    JenRec Recruitmentcenturion, Gauteng, South Africa
    This is an excellent opportunity for a driven engineer to work in a multidisciplinary, high-tech environment with a focus on. Design, develop, and test firmware for embedded systems in custom hardwa...Show moreLast updated: 30+ days ago
    • Promoted
    Software Engineer.

    Software Engineer.

    People SourceJohannesburg, South Africa
    Solid experience in web and back end development, with strong problem solving abilities in an agile environment.Development of a cloud based suite of telecoms products. Strong technical and analytic...Show moreLast updated: 30+ days ago
    • Promoted
    SYSTEMS SOFTWARE ENGINEER

    SYSTEMS SOFTWARE ENGINEER

    Tower GroupJohannesburg, South Africa
    Our client, a leader in the casino and hotels industry is seeking a Systems Software Engineer to join there team based in their head office in Johannesburg. Minimum of 1 year work experience using.C...Show moreLast updated: 30+ days ago
    • Promoted
    Senior Software Engineer

    Senior Software Engineer

    Network RecruitmentPretoria, South Africa
    My well-established client in the IT industry is seeking a C# Developer who is customer-focused, self-driven, detail-oriented, and quick to learn. The successful candidate will be responsible for, b...Show moreLast updated: 30+ days ago
    • Promoted
    Software Engineer (C and Linux)

    Software Engineer (C and Linux)

    Ace StaffingJohannesburg, South Africa
    Senior Software Engineer (C / Linux).Location : Johannesburg, South Africa.Industry : Warehousing Automation / Embedded & Systems Software. Development Tech Stack : C, Linux (Embedded & Systems P...Show moreLast updated: 30+ days ago
    • Promoted
    SOFTWARE ENGINEER (.NET C# AND LINUX) – MIDRAND – UP R640 PER HOUR

    SOFTWARE ENGINEER (.NET C# AND LINUX) – MIDRAND – UP R640 PER HOUR

    E-MergeJohannesburg, South Africa
    One of the worlds most iconic automotive brands is seeking a Software Engineer with strong.NET C# and Linux skills to join their dynamic, future-focused technology team. You will be part of a team t...Show moreLast updated: 30+ days ago