Software Engineer (Go)
Job details
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 500 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
- Experience developing software using Go.
- Excellent communication skills in the English language, both verbal and written, especially in online environments
- An exceptional academic track record from both high school and preferably university
- Willingness to travel up to 4 times a year for internal events
- Hands-on experience developing highly concurrent distributed systems
- Experience with container technologies (Docker, LXD, Kubernetes, etc.)
- Solid networking background and experience
- Experience with agile software development methodologies
- Experience in the Linux and open-source software world
- Experience with configuration management software (Ansible, Chef, Puppet, et al.)
- Working knowledge of cloud computing
- Experience with software packaging (Debian, snaps)
- Programming with, and operating, SQL and NoSQL databases
- Experience working on a distributed team on an open source project -- even if that is community open source contributions.
- Demonstrated track record of Open Source contributions
- Prior experience developing plugins for Terraform
- Distributed work environment with twice-yearly team sprints in person - we’ve been working remotely since 2004!
- Personal learning and development budget of USD 2,000 per year
- Annual compensation review
- Recognition rewards
- Annual holiday leave
- Maternity and paternity leave
- Employee Assistance Programme
- Opportunity to travel to new locations to meet colleagues from your team and others
- Priority Pass for travel and travel upgrades for long haul company events
Apply safely
To stay safe in your job search, information on common scams and to get free expert advice, we recommend that you visit SAFERjobs, a non-profit, joint industry and law enforcement organization working to combat job scams.