C++/Rust Graphics and Windowing System Software Engineer - Mir
Canonical is a leading provider of open source software and operating systems to the general enterprise and technology markets. Our platform, Ubuntu, is widely used in cloud, data science, AI, engineering innovation, and IoT. We publish Mir, a high-performance stack for window managers, display subsystems, and solutions built on top of it, like Ubuntu Frame. We are building the technology stack that empowers apps to work seamlessly in every graphical environment and we enable graphics across the Ubuntu certified hardware ecosystem.
Most of the software is written in C++, with support tooling in scripting languages. We will use Rust as an evolutionary step forward. Therefore candidates are expected to have strong skills in both Rust and C++. We are growing the team and looking for colleagues who share a passion for precision, performance, and user experience. This is a role with a minimum of 2 years industry experience, with preference for experience in building window compositing systems or graphics device experience. The role is remote in the EMEA or APAC region.
Responsibilities
- Design and implementation of features across the Mir stack
- Assisting in debugging, tracking down and fixing issues
- Participating in our engineering process through code and architectural review
- Creating and improving tests and performance benchmarks to catch issues early
- Creating and maintaining documentation to enhance the developer experience
- Engaging with the open source community and commercial partners
- Collaborating proactively with a distributed team
What we are looking for in you
- Bachelor's or equivalent degree in Computer Science, STEM or similar and 2+ years of working experience
- Excellent modern C++ and Rust programming skills
- Familiarity with Linux as a development and deployment platform
- Ability to collaborate remotely with a diverse set of team members and remain highly motivated, productive, and organized
- Ability to travel internationally twice a year for company events up to two weeks long
Nice-to-have skills
- Experience with the Wayland protocol ecosystem and compositors
- Familiarity with OpenGL, Vulkan, Flutter and other graphics toolkits and animation frameworks
- Solid understanding of asynchronous programming and concurrency patterns
- Proven ability to deliver robust code to production
- Strong written and verbal communication skills to document and present software developed
What we offer colleagues
- 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
- Team Member Assistance Program & Wellness Platform
- 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 open source. As the publisher of Ubuntu, we support the global move to open source across AI, IoT, and the cloud. We recruit on a global basis and set high standards for people joining the company. Most colleagues have worked from home since our 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 creates a better work environment and better products. Whatever your identity, we will give your application fair consideration.
#Graphics #OpenSource #Canonical #Mir #Rust #C++
Seniority level
- Entry level
Employment type
- Full-time
Job function
- Engineering and Information Technology
Industries
- Software Development
Referrals increase your chances of interviewing at Canonical by 2x
#J-18808-Ljbffr