Software Engineer - Python - Ubuntu Pro client - graduate level
Canonical
Full time
Software Development
Canada
Hiring from: Canada
Ubuntu Pro is a suite of specialist services provided by Canonical. Whether for enterprise customers deploying systems at scale or users who want security patching for their personal Ubuntu LTS at home, the Ubuntu Pro Client is the command-line tool that manages all these services.
The quality and stability of the Ubuntu Pro Client is critically important, since it comes pre-installed on every Ubuntu system. You'll work with the Ubuntu Server team, alongside major cloud partners and multiple Canonical product teams to develop, test and release improvements to the Pro client. You will also be a voice in communication with our users, ensuring their needs are met.
This role requires quality-oriented software engineering in Python and a focus on software interoperability over a vast range of target releases and environments. Excellent Python skills are a key requirement, with previous contributions to open source Python projects being an advantage. The Pro client often interacts with the Ubuntu package management; therefore, experience in configuring apt, and knowledge of deb packaging and general system administration is advantageous in this role.
Applicants should be passionate about the Ubuntu project and its values and about building tools that are used by millions of people around the world. A personal interest and emphasis on quality, thinking of edge cases, ease of use, documentation, and careful community coordination is important. The Pro client is used at all ranges, from mission-critical environments to hobbyist Ubuntu users; applicants should be ready to work with the whole spectrum of end users and help guide engineering best practices with all of them in mind.
What you'll do
#stack
The quality and stability of the Ubuntu Pro Client is critically important, since it comes pre-installed on every Ubuntu system. You'll work with the Ubuntu Server team, alongside major cloud partners and multiple Canonical product teams to develop, test and release improvements to the Pro client. You will also be a voice in communication with our users, ensuring their needs are met.
This role requires quality-oriented software engineering in Python and a focus on software interoperability over a vast range of target releases and environments. Excellent Python skills are a key requirement, with previous contributions to open source Python projects being an advantage. The Pro client often interacts with the Ubuntu package management; therefore, experience in configuring apt, and knowledge of deb packaging and general system administration is advantageous in this role.
Applicants should be passionate about the Ubuntu project and its values and about building tools that are used by millions of people around the world. A personal interest and emphasis on quality, thinking of edge cases, ease of use, documentation, and careful community coordination is important. The Pro client is used at all ranges, from mission-critical environments to hobbyist Ubuntu users; applicants should be ready to work with the whole spectrum of end users and help guide engineering best practices with all of them in mind.
What you'll do
- Collaborate proactively with a distributed team
- Write high quality code, with unit and functional tests, to create new features
- Debug issues and produce high quality code to fix them
- Review code produced by other engineers
- Discuss ideas and investigate to find good solutions
- Work from home, with global travel 2 to 4 weeks per year for internal and external events
- 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 a Bachelor's or equivalent in Computer Science, STEM or similar degree
- You have extensive experience with Python on Linux
- You have interest in and experience with two or more of the following: Ubuntu Linux systems administration, continuous integration, end-system contract management, Debian packaging, working with public or on premise clouds
- Bonus points if you have experience engaging with the open source community
#stack
How to apply
To apply for this job you need to authorize on our website. If you don't have an account yet, please register.
Post a resumeSimilar jobs
Canonical, the publisher of Ubuntu, is growing its Linux kernel engineering capacity significantly. We have staff in Europe/Middle East/Africa (EMEA), both North and South America, and the whole Asia/Pacific regions that work holistically on the Ubuntu kernel and is therefore...
Software Development
Canada
Hiring from: Canada
American farmers have made tremendous technology advancements through hardware improvements and investments in precision agriculture. However, when it comes to the back-office, most farms are decades behind, relying on spreadsheets, filing cabinets, and decades-old on-prem software to recruit, manage, and...
Software Development
United States
Hiring from: United States
About Minware minware provides development observability software that helps engineering organizations gain full visibility into their software development process to improve predictability, efficiency, and more. Kevin Borders founded minware after bootstrapping his previous company to $86m in revenue and selling...
Software Development
United States
Hiring from: United States