Canonical
Posted 6mo ago

System Software Engineer - GCC/LLVM compiler, tooling, and ecosystem

Canonical
North America or South America
RemoteFull Time
Responsibilities
  • building toolchains
  • debugging issues
  • mentoring engineers
Requirements
  • Experience with GCC/LLVM, C/C++, Linux
  • Debian/Ubuntu packaging
  • Strong software engineering skills
  • Ability to collaborate remotely
  • Mentor others, and travel internationally twice yearly
Technical tools mentioned
GCCLLVMCC++DebianUbuntuLinux

Job description

Canonical is a leading provider of open source software and operating systems to the global enterprise and technology markets. Our platform, Ubuntu, is very widely used in breakthrough enterprise initiatives such as public cloud, data science, AI, engineering innovation and IoT. Our customers include the world's leading public cloud and silicon providers, and industry leaders in many sectors. The company is a pioneer of global distributed collaboration, with 1200+ colleagues in 75+ countries and very few office based roles. Teams meet two to four times yearly in person, in interesting locations around the world, to align on strategy and execution.

The company is founder led, profitable and growing.

We are hiring a System Software Engineer for GCC/LLVM compiler, tooling, and ecosystem

We are building a team to focus on the modern C and C++ programming language and their ecosystem on Ubuntu. They will deliver the best possible GCC and LLVM runtimes, developer experience and supporting tooling in Ubuntu. They will  ensure that the cutting edge of modern programming languages innovation is available to Ubuntu users, to lay the foundation for future inventions and open source communities.

This is an exciting opportunity for a software engineer with a strong passion for compilers, runtimes and tool chains. You will have excellent competencies in modern C/C++, Linux distributions, software architectures and  open source software.  Come build a rewarding, meaningful career working with the best and brightest people in open source technology at Canonical, a growing international software company and make Ubuntu the best operating system to develop and run C/C++ applications in the cloud, in datacenters, in containers, directly on the operating system, and anywhere Ubuntu can run.

The Ubuntu Foundations Team delivers the core Ubuntu system, the base for the entire Ubuntu family of products and services. Ubuntu strives to deliver the latest-best free software components, in an easy to use and highly reliable form. We build on the technical excellence of keystone open source software like GNU and Debian and bring additional focus and shape to the solutions we offer the industry.

Part of the Ubuntu Foundations team, you will work on one of the most critical toolchains involved in the making of Ubuntu and the pillars of the modern software ecosystem. You will leverage your competencies and experience  in C, C++ to make Ubuntu the best platform to develop, distribute and consume software built with GCC and LLVM. You will be passionate about the future of C, C++, of Ubuntu, mindful of the dynamics of the open-source ecosystem, and equally aware of the needs of large but innovative organizations. You will drive the best in class integration in Ubuntu from desktop to cloud in a secure, reliable, performing, efficient and future-proof fashion.

You will be discussing design with other team members , mentor less senior engineers, and participate in code reviews and design reviews. You will also be working with other teams to ensure architecture decisions improve the overall performance and experience of Ubuntu. Your role as part of the Ubuntu Foundations team will have an impact on every aspect of Ubuntu from Desktop, Server, Ubuntu Core and also cloud images.

Location: This role will be based remotely in the AMERICAS region

The role entails

Based on the first round of interviews, we identify specific teams where you might be an excellent fit and conduct second-round interviews with those teams. Our engineers are:

  • Collaborate proactively with a distributed team
  • Select, integrate and package best-of-breed tooling with Ubuntu to improve developer and operator experience with GCC and LLVM
  • Write high-quality code to create new features
  • Debug issues and produce high-quality code to fix them
  • Review code produced by other engineers
  • Discuss ideas and collaborate on finding good solutions
  • Work from home with global travel 2 to 4 weeks a year for internal and external events

What we are looking for in you

  • You have relevant GCC or LLVM experience, ideally in the world of cloud-native software and Linux
  • You have experience in packaging software for Debian and Ubuntu
  • You are a long-time Linux user
  • Exceptional academic track record from both high school and university
  • Undergraduate degree in a technical subject or a compelling narrative about your alternative chosen path
  • You love technology and working with brilliant people
  • You are passionate, curious, flexible, articulate, and accountable
  • You value soft skills and are passionate, enterprising, thoughtful, and self-motivated
  • Ability to travel internationally twice a year for company events up to two weeks long

Nice-to-have skills

  • Experience with Linux distributions and distribution engineering
  • Experience with software packaging and distribution mechanisms
  • Understanding of build systems and toolchains, including for cross-compilation 
  • Performance or Security Engineering experience

What we offer you

We consider geographical location, experience, and performance in shaping compensation worldwide. We revisit compensation annually (and more often for graduates and associates) to ensure we recognize outstanding performance. In addition to base pay, we offer a performance-driven annual bonus. We provide all team members with additional benefits, which reflect our values and ideals. We balance our programs to meet local needs and ensure fairness globally.

  • 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 on a daily basis. 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. Canonical has been a remote-first company since its 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 create a better work environment and better products. Whatever your identity, we will give your application fair consideration.

About Canonical

Developer of the Ubuntu operating system and open source software.

Similar jobs

System Software Engineer roles
1d
Save
Mark Applied
Hide
System Software Engineer (RDSS Intern)
Taipei, Taipei City, Taiwan
OnsiteFull Time, Internship
NVIDIA
NVIDIANASDAQ: NVDA: Computing platform for AI and accelerated graphics.
Pursuing a master's or PhD in a relevant technical field; experience with system software, validation, diagnostics, embedded software, or Linux; strong C, C++, or Python skills.
C, C++, Python, Linux, PCIe, NVLink
1d
Save
Mark Applied
Hide
System Software Engineer (RDSS Intern)
Taipei, Taipei City, Taiwan
OnsiteInternship, Full Time
NVIDIA
NVIDIANASDAQ: NVDA: Computing platform for AI and accelerated graphics.
Pursuing a master's or PhD in a technical field, with system software or validation experience and strong C, C++, or Python skills plus Linux development familiarity.
C, C++, Python, Linux, PCIe, NVLink
1d
Save
Mark Applied
Hide
System Software Engineer (RDSS Intern)
Taipei, Taipei City, Taiwan
OnsiteInternship, Full Time
NVIDIA
NVIDIANASDAQ: NVDA: Computing platform for AI and accelerated graphics.
Pursuing a master's or PhD in a technical field, with system software or validation experience and strong C, C++, or Python programming skills in Linux environments.
C, C++, Python, Linux, PCIe, NVLink
4d
Save
Mark Applied
Hide
Software System Engineer 
Huntsville or Alabama or United States
OnsiteFull Time
Torch Technologies
Torch Technologies: Employee-owned provider of research, development, and engineering services.
10+ YOEU.S. citizenship, bachelor's or master's degree in computer science or STEM, 10+ years of systems engineering experience, MagicDraw, Jira, Confluence, MBSE, Agile/SAFe experience, and active Secret clearance.
MagicDraw, Microsoft Office, Jira, Confluence, Model-Based Systems Engineering (MBSE), Scaled Agile Framework (SAFe)
1w
Save
Mark Applied
Hide
System Software Engineer - Debug Technologies
San Diego, California, United States
OnsiteFull Time
Apple
AppleNASDAQ: AAPL: Designing and manufacturing consumer electronics, software, and digital services.
3+ YOERequires 3+ years developing operating system features or equivalent experience, OS fundamentals, embedded systems experience, C/C++/Swift proficiency, GenAI experience, and a bachelor's degree or equivalent skills.
C, C++, Swift, GenAI
1w
Save
Mark Applied
Hide
System Software Engineer
Singapore
OnsiteFull Time
Hyundai Motor Group Innovation Center Singapore
Hyundai Motor Group Innovation Center Singapore: Singapore-based mobility hub and EV manufacturing research facility developing products and factory technologies for Hyundai Motor Group.
3+ YOEBachelor’s or Master’s degree or equivalent experience, 3+ years in software engineering, Python/C++, simulation or autonomous systems, APIs, data pipelines, industrial automation, and robotics platforms.
Python, C++, Unity, Unreal Engine, Gazebo, Plant Simulation, AnyLogic, SimPy, NVIDIA Isaac Sim, Omniverse, SQL, REST APIs, MQTT, gRPC, Protobuf, ROS/ROS2, URDF/SDF, MES, WMS, PLC, SCADA, OPC UA, VDA 5050, Docker, Git, CI/CD
1w
Save
Mark Applied
Hide
Staff System Software Engineer, AOSP (Android OS)
United States
$185k-$273k/yr RemoteFull Time
Motive
Motive: Integrated operations platform serving physical-economy organizations that manage workers, vehicles, equipment, and fleet spending.
8+ YOE8+ years of software development experience; bachelor's degree in a relevant engineering or computer science field or equivalent experience; Kotlin, Java, C++, AOSP, Android OS, Linux, embedded programming, and RTOS experience.
Kotlin, Java, C++, AOSP (Android Open Source Project), Android OS, Linux, RTOS
1w
Save
Mark Applied
Hide
System Software Engineer (OT/IoT)
Singapore, Singapore, Singapore
HybridContract
Assurity Trusted Solutions
Assurity Trusted Solutions: To enhance trust and assurance of digital services by providing secure and convenient identity management solutions
8+ YOERequires 8+ years in web and backend development, cloud and IoT experience, OOP and scripting languages, frontend frameworks, cloud-native architecture, hardware integration, OT protocols, and basic electronics.
AWS, Azure, Java, C++, Python, JavaScript, React, Angular, OPCUA, Modbus, Bacnet, Google Cloud, CI/CD, GPIO, USB