Software Engineer, Python
Canonical
About the Role
Canonical is hiring a Software Engineer to develop, test, and release improvements to Ubuntu on public clouds. This role requires quality-oriented software engineering in Python with a focus on software interoperability across a vast range of target releases and environments.
Key Responsibilities
- 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.
- Create and manage Ubuntu images.
- Communicate with users to ensure their needs are met.
Requirements & Tech Stack
- Excellent Python skills are a key requirement.
- Extensive experience with Python on Linux.
- Experience with configuring apt, Debian packaging, and general system administration is advantageous.
- Experience in 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
Qualifications
- Bachelor’s or equivalent degree in Computer Science, STEM, or a similar field.
- Passion for the Ubuntu project and its values.
- Personal interest and emphasis on quality, thinking of edge cases, ease of use, documentation, and careful community coordination.
- Ability to work with the whole spectrum of end users and guide engineering best practices.
- Love for technology and working with brilliant people.
- Curiosity, flexibility, articulation, and accountability.
- Passion, enterprise, thoughtfulness, and self-motivation.
Bonus Points
- Previous contributions to open source Python projects.
- Experience engaging with the open source community.
Work Environment
- Work from home.
- Global travel for internal and external events (2 to 4 weeks per year).