Canonical - We deliver open source to the world faster, more securely, and more cost-effectively than any other company. We develop Ubuntu, the world’s most popular enterprise Linux from cloud to edge, together with a passionate global community of 200,000 contributors. Ubuntu means 'humanity to others. We chose it because it embodies the generosity at the heart of open source, the new normal for platforms and innovation. Together with a community of 200,000, we publish an operating system that runs from the tiny connected devices up to the world's biggest mainframes, the platform that everybody uses on the public cloud, and the workstation experience of the world's most productive developers. Secure and reliable, elegant and intuitive, and open for innovation - Ubuntu is the future of open source, which is why it's the fastest-growing Linux in the world despite already being the most widely deployed.
This is a fast-paced engineering role in Linux-based software-defined infrastructure and applications, covering all layers of the stack, including bare metal, virtualization (KVM) and containerization (Docker/LXC/LXD), storage (Ceph and Linux filesystems), networking (OVS, OVN and Core networking), up to OpenStack and Kubernetes, and the open source applications running on top of them. It will challenge you to show the breadth of engineering skill needed to work on almost any aspect of Ubuntu and the open source things people run with it.
This role is an opportunity for a technologist with a passion for Linux and open source to build a career with Canonical and drive success for our customers, community and the company. If you have an affinity for open source development, great communication skills, and a passion for troubleshooting and fixing issues in technology used by millions across the world, then you will enjoy working with some of the best people in the industry at Canonical.
This role deals with critical issues in the open source stack that require software engineering for upstream bug fixes. Our engineers have to be able to work productively at any level of the stack above the kernel, in a wide range of languages, to understand and address the software issues at hand. Our group is critical to the success of our enterprise customers, partners and Ubuntu itself.
You will help with troubleshooting and driving issues to resolution with workarounds, guidance, and bug fixes to be released upstream and in Ubuntu.
Responsibilities
Resolve complex customer problems related to Ubuntu, Kernel, Ceph, OpenStack, or Kubernetes and other open source software
Maintain a close working relationship with Canonical's field, support and product engineering teams
Participate in upstream communities
Develop bug fixes, backport patches, and work with upstream for inclusion
Review code produced by other engineers
Demonstrate good judgment in technical methods and techniques
Prioritize work and manage your time effectively against those priorities
Participate in team discussions to improve processes, tools, and documentation
Maintain clear, technical and concise communications
Work from home and travel internationally up to 10% of work time for team meetings, events and conferences
Requirements
Professional experience as a software engineer
Background in Computer Science, STEM or similar
Strong experience with Linux, and at least one of the following:
Ceph, OpenStack, Kubernetes or other cloud technologies
Strong development-level experience with at least one of Python, Go, C or C++ on Linux
Ability to troubleshoot with debugging tools like gdb
Familiarity with git source code repositories and branches
An exceptional academic track record
Willingness to travel up to 4 times a year for internal events
Skills:
You love technology and working with brilliant people
You are curious, flexible, articulate, and accountable
You value soft skills and are passionate, enterprising, thoughtful, and self-motivated
You have interest in, and experience with most of the following: Ubuntu Linux - kernel or userspace, Kubernetes, OpenStack, Ceph, QEMU/KVM, LXC/LXD, Python, Go, C, Postgresql, Mongo, Debian packaging, distributed systems.
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 - we’ve been working remotely since 2004!
Personal learning and development budget of USD 2,000 per year
Annual compensation review
Recognition rewards
Annual holiday leave
Maternity and paternity leave
Employee Assistance Programme
Opportunity to travel to new locations to meet colleagues from your team and others
Priority Pass for travel and travel upgrades for long haul company events.