Software Engineer - Distributed Systems
This is a unique opportunity to contribute 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.
* 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.
To be successful in this role, you will need experience developing software using Go, excellent communication skills in English, both verbal and written, especially in online environments, and an exceptional academic track record from both high school and preferably university.
The following skills may be helpful to you in the role:
* 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.
We offer a performance-driven annual bonus and provide all team members with additional benefits that reflect our values and ideals. We balance our programs to meet local needs and ensure fairness globally.