Senior Software Engineer - Python (Operator Development)
Canonical (View all Jobs)
Home based - Americas, EMEA
1. Review your open source contributions at shortlist stage. 2. 4x60m interviews over Hangouts, each of which is carried out blind (none of the interviewers talk to each other until the final review). The company is fully remote, so there is no on-site.
Programming Languages Mentioned
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.
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
Who you are
- You have a Bachelor’s 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
Canonical is proud to foster a workplace free from discrimination. We truly believe that diversity of experience, perspectives, and background will lead to a better environment for our employees and a better platform for our users and customers. This is something we value deeply and we encourage everyone to come be a part of the world of Ubuntu.
Please mention No Whiteboard if you apply!
I'm a one-man team looking to improve tech interviews, and could use any support! 😄