Embedded Linux Software Engineer Job in Kenya

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.
Responsibilities



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

Qualifications

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

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

How To Apply

Click here to apply