C++/Rust Graphics and Windowing System Software Engineer

1 week ago


Manila, National Capital Region, Philippines Canonical Full time
Overview

Canonical is hiring a C++/Rust Graphics and Windowing System Software Engineer - Mir role. The position is remote in the EMEA or APAC region. Canonical is a leading provider of open source software and operating systems to the global enterprise and technology markets. Our platform, Ubuntu, is widely used in breakthrough enterprise initiatives such as public cloud, data science, AI, engineering innovation, and IoT. We build Mir – a high-performance, high-efficiency technology stack for window managers, display subsystems and solutions built on top of it, like Ubuntu Frame. Leading with vision, we shape the technology stack that empowers communities to realize a world where apps work seamlessly in every graphical environment. Our goal is to enable the whole spectrum of graphics from single-purpose screens through edge devices to full desktop environments. We also set the pace for graphics enablement across the Ubuntu certified hardware ecosystem. Our daily drill includes design, development and testing of features as well as working with the community and responding to issues and user inquiries. Most of the software is written in C++, with support tooling in scripting languages. We will use Rust as an evolutionary step forward; thus candidates are required to have strong skills in both Rust and C++. We are growing the team and looking for new colleagues who share our passion for precision, performance and user experience. We are looking for people with at least 2 years of industry experience. We are ideally looking for experience in building window compositing systems or graphics device experience. Canonical offers a fast-paced team environment and a career full of learning and development opportunities across the open source spectrum.

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
  • Excellent Bachelor\'s or equivalent degree in Computer Science, STEM or similar and 2+ years of working experience
  • Excellent modern C++ and excellent 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
  • You have experience with the Wayland protocol ecosystem and compositors
  • You are familiar with OpenGL, Vulkan, Flutter and other graphics toolkits and animation frameworks
  • You have a solid understanding of asynchronous programming and concurrency patterns
  • You have proven ability to consistently deliver robust code to production
  • You have 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 the global move to open source. As the company that publishes Ubuntu, one of the most important open-source projects and the platform for AI, IoT, and the cloud, we are changing the world of software. We recruit on a global basis and set a very high standard for people joining the company. We expect excellence; in order to succeed, we need to be the best at what we do. Most colleagues at Canonical 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

Seniority level
  • Entry level
Employment type
  • Full-time
Job function
  • Engineering and Information Technology
Industries
  • Software Development
#J-18808-Ljbffr

  • Manila, National Capital Region, Philippines beBeeSoftwareEngineer Full time $1,800,000 - $2,000,000

    Software Engineer for Graphics and Windowing SystemWe are shaping the technology stack that empowers communities to realize a world where apps work seamlessly in every graphical environment.Key Responsibilities:Design and implementation of features across the Mir stack, ensuring seamless integration with diverse graphical environments.Contribute to...


  • Manila, National Capital Region, Philippines beBeeRustEngineer Full time $146,000 - $263,600

    Transforming the Foundations of Linux SystemsRust, a new and exciting language for system-level services and capabilities, presents an opportunity to rethink the foundations of future Linux systems with Rust as a central driver of change.Design and implement well-tested and well-documented software in Rust to drive innovation and excellence.Advocate for Rust...


  • Manila, National Capital Region, Philippines Binance Full time

    Binance is a leading global blockchain ecosystem behind the world's largest cryptocurrency exchange by trading volume and registered users. We are trusted by over 280 million people in 100+ countries for our industry-leading security, user fund transparency, trading engine speed, deep liquidity, and an unmatched portfolio of digital-asset products. Binance...


  • Manila, National Capital Region, Philippines beBeeKernel Full time $60,000 - $120,000

    Linux Kernel Developer PositionWe are seeking an experienced and motivated Linux kernel developer to join our team. This is a fantastic opportunity for someone with a passion for software engineering and a desire to work on cutting-edge projects.The ideal candidate will have a strong background in operating system fundamentals, experience with C and/or Rust...


  • Manila, National Capital Region, Philippines beBeeRust Full time $146,000 - $263,600

    We're seeking a seasoned Rust Engineer to drive the adoption of this exciting language across our platforms.About the Role:Implement robust, well-documented software in Rust and advocate for its use throughout our organization.Prioritize projects and codebases that could benefit from Rust adoption and develop strategies to integrate it seamlessly.Collaborate...


  • Manila, National Capital Region, Philippines beBeeSoftwareEngineer Full time $120,000 - $150,000

    We are seeking a highly skilled software engineer with expertise in designing and implementing features across the Mir stack. The ideal candidate will have strong skills in both C++ and Rust, as well as a solid understanding of asynchronous programming and concurrency patterns.Key Responsibilities:Design and implement features across the Mir stackAssist in...


  • Manila, National Capital Region, Philippines beBeeembeddedLinuxFieldEngineer Full time $120,000 - $150,000

    Embedded Linux professionals are in high demand as the use of embedded systems continues to grow across various industries. As an Embedded Linux Field Engineer, you will be responsible for delivering solutions that meet customer needs while ensuring seamless integration with Canonical technology.Key ResponsibilitiesCollaborate with customers to gather...


  • Manila, National Capital Region, Philippines beBeeLinux Full time ₱6,000 - ₱9,000

    About the RoleThis is a critical position that requires working on low-level system technology for autonomous devices across various seniority levels.We are seeking careful and conscientious engineers who appreciate the challenge of memory, performance, battery and connectivity constrained code.The ideal candidate will have experience with Linux (Debian or...


  • Manila, National Capital Region, Philippines beBeeSoftwareEngineer Full time $100,000 - $123,456

    Software Engineer RoleWe are seeking a skilled software engineer to join our team. The ideal candidate will have strong expertise in C++ and Rust programming languages.The primary responsibilities of this role include designing and implementing features across the Mir stack, assisting in debugging and issue resolution, participating in code and architectural...


  • Manila, National Capital Region, Philippines beBeeRust Full time $146,000 - $263,600

    Job Title: Rust Engineering LeadThis is an exciting opportunity to drive the adoption of Rust language into our offerings, starting with Ubuntu but also our own projects and open source initiatives.