C++ Graphics and Windowing System Software Engineer - Mir
Canonical Adelaide, South Australia, Australia
Join or sign in to find your next job
Join to apply for the C++ Graphics and Windowing System Software Engineer - Mir role at Canonical
C++ Graphics and Windowing System Software Engineer - Mir
Canonical Adelaide, South Australia, Australia
2 weeks ago Be among the first 25 applicants
Join to apply for the C++ Graphics and Windowing System Software Engineer - Mir role at Canonical
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 entire 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 an excellent developer experience, security, and easy access to popular graphics toolkits and libraries.
We work on Mir and related solutions like Ubuntu Frame, and we also set the pace for graphics enablement across the Ubuntu hardware ecosystem. Our daily activities include designing, developing, testing features, and responding to issues and user inquiries. Most software is written in C++, supported by scripting languages, with considerations for Rust or Carbon as evolutionary steps.
This role offers the opportunity to impact modern display technologies affecting millions of developers. Canonical provides a dynamic team environment and numerous learning and development opportunities across the open-source spectrum.
What you will do
1. Design and implement features across the Mir stack
2. Assist in debugging, tracking down, and fixing issues
3. Enhance tests and performance benchmarks to identify issues early
4. Create documentation to improve the developer experience
5. Engage with the open-source community and commercial partners
6. Collaborate proactively with a distributed team
Required Skills And Experience
* Excellent modern C++ programming skills
* 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 presentation
* Ability to work productively remotely, highly motivated and organized
* Familiarity with Linux as a development and deployment platform
* Proven ability to deliver robust code to production
* Bachelor's or equivalent degree in Computer Science, STEM, or similar
Desirable Skills And Experience
* Experience with the Wayland protocol ecosystem and compositors
* Familiarity with Linux Desktop Environments
* Experience with OpenGL, Vulkan, and other graphics frameworks
* Experience developing and deploying on Ubuntu/Debian systems
About Canonical
Canonical is an international software company working with the open-source community to deliver Ubuntu, the world's leading free software platform. Our services help businesses reduce costs, improve efficiency, and enhance security with Ubuntu.
We are committed to a workplace free from discrimination. Diversity of experience, perspectives, and backgrounds enriches our environment and products. We welcome all applications and will consider each fairly.
Additional Information
* Seniority level: Entry level
* Employment type: Full-time
* Job function: Engineering and Information Technology
* Industries: Software Development
Referrals can double your chances of interviewing at Canonical.
#J-18808-Ljbffr