Canonical Circular Logo

C++ Graphics and Windowing System Software Engineer - Mir

Canonical Riyadh, Saudi Arabia Posted: 17 Jan 2025

Financial

  • Estimate: $90k - $120k*
  • Zero income tax location

Accessibility

  • Fully Remote
  • Apply from abroad
  • Visa Provided

Requirements

  • Experience: Intermediate
  • English: Professional

Position

We build a high-performance, high-efficiency stack for window managers and display subsystems in C++, called Mir. We are growing the team and looking for colleagues who share our passion for precision, performance, and user experience. Our goal is to enable the whole spectrum of graphics from single-purpose screens through edge devices to full desktop environments. We focus on developers building window compositing systems or device graphics experience, aiming to provide them with an exceptional developer experience, security, and easy access to today’s most used graphics toolkits and libraries.

We work on Mir and solutions built on it, like Ubuntu Frame, and we also set the pace for graphics enablement across the Ubuntu certified hardware ecosystem. Our daily activities include the design, development, and testing of features as well as responding to issues and user inquiries.

Most of the software is written in C++, with support tooling in scripting languages. We are also considering Rust or Carbon as potential evolutionary steps forward. This is an excellent opportunity for someone who wants to make a meaningful impact on modern display technologies that will influence millions of developers.

Canonical offers a fast-paced team environment and a career full of learning and development opportunities across the open-source spectrum.

Responsibilities:

  • Design and implement features across the Mir stack
  • Assist in debugging, tracking down, and fixing issues
  • Improve tests and performance benchmarks to catch issues early
  • Create documentation to enhance the developer experience
  • Engage with the open source community and commercial partners
  • Collaborate proactively with a distributed team

Required Skills and Experience:

  • Excellent, modern C++ programming skills
  • A rigorous approach to software design, development, and testing
  • Solid understanding of asynchronous programming and concurrency patterns
  • Strong written and verbal communication skills for documentation and presentations
  • Ability to collaborate remotely, with high motivation and organization
  • Familiarity with Linux as a development and deployment platform
  • Proven ability to consistently deliver robust code to production
  • Bachelor's or equivalent in Computer Science, STEM, or a similar degree

Desirable Skills and Experience:

  • Experience with the Wayland protocol ecosystem and compositors
  • Familiarity with a range of Linux Desktop Environments
  • Experience with OpenGL, Vulkan, and other graphics and animation frameworks
  • Experience developing and deploying on an Ubuntu/Debian system

Work Conditions:
Full-time, Remote

Location:
Riyadh, Riyadh, Saudi Arabia (Remote)

Apply now

Jobs you might like   View all jobs

About Canonical

We deliver open source to the world faster, more securely and more cost effectively than any other company. We're also the publishers of Ubuntu, the world’s most popular enterprise Linux from cloud to edge, together with a passionate global community of 200,000+ contributors.