The role of a Software Engineer at Canonical
As a software engineer on the team, you'll be contributing to the development of Juju, a large open-source Go project that powers complex distributed software systems across the world.
Juju is the engine behind model-driven operations, providing a means to operate complex software on public cloud, private cloud, Kubernetes, and bare-metal. Combined with the Ops framework, Juju provides a complete solution for applications and infrastructure management.
Many internal and external teams depend on Juju to deliver their products and services - from Canonical Managed Solutions, our OpenStack and cloud delivery teams, to Fortune companies.
Location : This is a Globally remote role.
What your day will look like
- Contribute to the design, delivery, and support of features in a highly concurrent, highly distributed system that drives cloud automation and software operations at scale.
- Collaborate proactively with a distributed team
- Debug issues and interact with upstream communities publicly
- Work with helpful and talented engineers including experts in many fields
- Discuss ideas and collaborate on finding good solutions
- Work from home with global travel for 2 to 4 weeks per year for internal and external events
What we are looking for in you
Experience developing software using Go.Excellent communication skills in the English language, both verbal and written, especially in online environmentsAn exceptional academic track record from both high school and preferably universityWillingness to travel up to 4 times a year for internal eventsAdditional skills that you might also bring
The following skills may be helpful to you in the role, but we don't expect everyone to bring all of them.
Hands-on experience developing highly concurrent distributed systemsExperience with container technologies (Docker, LXD, Kubernetes, etc.)Solid networking background and experienceExperience with agile software development methodologiesExperience in the Linux and open-source software worldExperience with configuration management software (Ansible, Chef, Puppet, et al.)Working knowledge of cloud computingExperience with software packaging (Debian, snaps)Programming with, and operating, SQL and NoSQL databasesExperience working on a distributed team on an open source project even if that is community open source contributions.Demonstrated track record of Open Source contributionsPrior experience developing plugins for TerraformWhat 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 recognise 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 !Personal learning and development budget of USD 2, per yearAnnual compensation reviewRecognition rewardsAnnual holiday leaveMaternity and paternity leaveEmployee Assistance ProgrammeOpportunity to travel to new locations to meet colleagues from your team and othersPriority Pass for travel and travel upgrades for long haul company events