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 an exciting opportunity for a software engineer passionate about open source software, Linux, and cloud-native computing. Come and build a rewarding, meaningful career working with the best and brightest people in technology at Canonical, the growing international software company behind Ubuntu.
As part of the Charmed Operator Framework team, you’ll be responsible for designing and maintaining the Python framework that allows for the creation and management of Charmed Operators - software that drives software. You will be responsible for ensuring sound software architecture and enforcing best practices in software quality, testing and documentation.
This is a role for individual contribution through quality, Pythonic code, exceptional design and intuitive documentation.
You’ll be designing and implementing the foundation for software operators that can run anywhere, from bare metal to Kubernetes in the cloud. You’ll work closely with other teams in Canonical to ensure the framework provides a reliable, easy-to-use solution that scales to production workloads and meets the needs of our customers looking to adopt cutting-edge technology.
In addition to the core framework development, this team has responsibilities in the Charmed Operator community, for which Charmhub is the centre. You'll get the chance to work not just with the broad range of talent within Canonical, but the broader open source community. The Charmed Operator ecosystem is made up of Charmed Operators themselves, but also Juju, Pebble and more. Come and help build a thriving community, and contribute to a broad range of technologies that ensure seamless software operations at scale for some of the biggest names in tech.
In addition to this role, we are hiring for engineers with experience in operating and automating different classes of software. From Data Platform to Observability and MLOps; if you have experience in automating or operating these kinds of software, then please seek out those roles, or indicate your experience in your application to this role.
Responsibilities
What you’ll do:
Collaborate proactively with a globally distributed team
Write high quality, idiomatic Python to drive the delivery of the Python Operator Framework
Build and maintain a high-quality testing framework to help businesses operate complex software efficiently and safely
Debug issues and produce high quality code to fix them
Review code produced by other engineers
Contribute to technical documentation that define best practices for authoring high quality operators
Engage with the community to share best practices
Encourage and shepherd quality, idiomatic code into the framework
Discuss ideas and collaborate on finding good solutions
Work from home with global travel 2 to 4 weeks for internal and external events
Job Requirements
Who you are:
You have a Bachelor's Degree or equivalent in Computer Science, STEM or similar Degree
You have deep experience and history of writing modern, maintainable Python
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 and experience with two or more of the following: Linux, Kubernetes, Public cloud, OpenStack, LXC/LXD, Python, Go, Debian packaging, scalable web services