Canonical Logo

Canonical

C++ Graphics and Windowing System Software Engineer - Mir

Posted 4 Days Ago
Remote
8 Locations
Mid level
Remote
8 Locations
Mid level
The role involves designing and implementing features for the Mir stack, debugging issues, improving performance benchmarks, documenting software, and engaging with the open-source community. The position requires strong C++ programming skills and familiarity with Linux and graphics frameworks.
The summary above was generated by AI

We build a high-performance, high-efficiency stack for window managers and display subsystems in C++, called Mir. We're growing the team and looking for new 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 who are building window compositing systems or device graphics experience, and aim to give them an amazing 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 drill includes design, development and testing of features in those pieces of software as well as responding to issues and user inquiries. Most of the software is written in C++, with support tooling in scripting languages. We're also considering Rust or Carbon as evolutionary steps forward.

This is an excellent opportunity for someone who wants to have a meaningful impact on modern display technologies that will impact millions of developers. Canonical offers a fast-paced team environment and a career full of learning and development opportunities across the open source spectrum.

What you will do

  • 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

  • You have excellent, modern C++ programming taste
  • You have a rigorous approach to software design, development and testing
  • You have a solid understanding of asynchronous programming and concurrency patterns
  • You have strong written and verbal communication skills to document and present software developed
  • You are productive collaborating remotely and are highly motivated and organized
  • You are familiar with Linux as a development and deployment platform
  • You have proven ability to consistently deliver robust code to production
  • Bachelor’s or equivalent in Computer Science, STEM or similar degree

Desirable skills and experience

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

What is Canonical?

Canonical is a growing international software company that works with the open-source community to deliver Ubuntu, “the world’s best free software platform”. Our services help businesses worldwide to reduce costs, improve efficiency and enhance security with Ubuntu.

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.

#LI-Remote 

Top Skills

C++

Similar Jobs

3 Hours Ago
Remote
Bengaluru, Karnataka, IND
Expert/Leader
Expert/Leader
Cloud • Information Technology • Productivity • Security • Software • App development • Automation
As a Principal DevOps Engineer at Atlassian, you will tackle complex technical challenges, deliver solutions, mentor junior engineers, and lead projects across engineering teams. This role emphasizes your expertise in software development and architecture, particularly with languages like Java, C#, or C/C++, and involves significant responsibility and influence within the team.
Top Skills: C#C/C++Java
3 Hours Ago
Remote
Bengaluru, Karnataka, IND
Expert/Leader
Expert/Leader
Cloud • Information Technology • Productivity • Security • Software • App development • Automation
The Senior Principal Engineer will lead the Cloud Transition team in defining and executing the vision for enterprise-grade solutions, focusing on platform capabilities such as Backup/Restore and Data Portability. This role emphasizes collaboration, mentorship, and operational excellence, driving the strategic direction of software architecture while influencing other technical leaders and ensuring high customer satisfaction.
Top Skills: Java
7 Hours Ago
Remote
Bengaluru, Karnataka, IND
Expert/Leader
Expert/Leader
Cloud • Information Technology • Productivity • Security • Software • App development • Automation
As a Senior Principal Engineer, you will design and build cutting-edge infrastructure solutions for Atlassian products, leading architectural decisions and mentoring engineers. You will collaborate with core teams to enhance platform capabilities, drive operational excellence, and implement strategic initiatives.
Top Skills: Cloud ComputingKubernetes

What you need to know about the Chennai Tech Scene

To locals, it's no secret that South India is leading the charge in big data infrastructure. While the environmental impact of data centers has long been a concern, emerging hubs like Chennai are favored by companies seeking ready access to renewable energy resources, which provide more sustainable and cost-effective solutions. As a result, Chennai, along with neighboring Bengaluru and Hyderabad, is poised for significant growth, with a projected 65 percent increase in data center capacity over the next decade.

Sign up now Access later

Create Free Account

Please log in or sign up to report this job.

Create Free Account