Canonical

Juju Software Engineer (Go)

To enable a wide diversity of open source communities to collaborate under the Ubuntu umbrella.

  • Software engineering

  • Full-time

  • Office | Melbourne, VIC, Australia

  • Visa sponsorship · No

  • Junior · A role for someone with some basic skills, good motivation and ability to learn. Typically 1-2 years of experience is required.

  • ·

Why Canonical

We deliver open source to the world faster, more securely and more cost effectively than any other company.

We're also the publishers of Ubuntu, the world’s most popular enterprise Linux from cloud to edge, together with a passionate global community of 200,000+ contributors. Ubuntu means 'humanity to others'​. We chose it because it embodies the generosity at the heart of open source, the new normal for platforms and innovation.

Together with a community of 200,000, we publish an operating system that runs from the tiny connected devices up to the world's biggest mainframes, the platform that everybody uses on the public cloud, and the workstation experience of the world's most productive developers.

About the role

We are hiring a Software Engineer 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. **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 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

Additional 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 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

What 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 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

What you'll be responsible for

  • Stakeholder Engagement

    Partner with stakeholders to understand specifications, business requirements, and communicate insights

  • 🤖

    Scripting and Automation

    Develop scripts and automated workflows to improve the efficiency and accuracy of repeated tasks

  • 🛠

    Test Automation

    Create and implement code tests and software test automation

Skills you'll need

  • 👥

    Collaboration

    Works with others by being open, clear in communication and listening to achieve goals

  • 🧮

    Numerical problem solving

    Works with numerical information and performs mathematical calculations to solve problems

  • 🔍

    Attention to detail

    Accurately identifies and rectifies discrepancies or errors that exists in information and deliverables

Meet the team

Avatar
Engineering

Canonical

Support the technical needs of customers leveraging Ubuntu and open source products.