remote
Linux Devices Software Engineer - Canonical
Software Engineer
Design and develop high‑performance, low‑level software for autonomous devices running Canonical Ubuntu, focusing on memory, performance, battery, and connectivity constraints across x86, ARM, and RISC‑V platforms.
About the role
Linux Devices Software Engineer at Canonical.
Key technologies: Python, C++, Go, Rust, Linux, Electrical Engineering.
Key Responsibilities
- Design, develop and maintain scalable software systems
- Write clean, well-tested and documented code
- Participate in code reviews and contribute to engineering best practices
- Collaborate with product and design teams to deliver features
Requirements
- 3+ years of relevant experience in software engineer
- Experience with software design patterns and architecture
- Solid understanding of data structures and algorithms