Canonical Logo

Canonical

Senior Juju Software Engineer (Go)

Posted 2 Days Ago
Be an Early Applicant
Remote
31 Locations
Senior level
Remote
31 Locations
Senior level
As a Senior Software Engineer at Canonical, you will design, deliver, and support features in a distributed system for cloud automation. Responsibilities include collaborating with teams, debugging issues, coaching junior engineers, and contributing to open source projects. You should have experience in Go and distributed systems, along with strong communication skills.
The summary above was generated by AI

The role of a Senior Software Engineer at Canonical

As a senior software engineer, you'll be an integral part of the team, driving process improvement, assisting the manager in running the team, coaching and developing colleagues with less experience, as well as owning functional areas from design and implementation all the way to support and maintenance. 

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

  • Own 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
  • Coach and develop team members with less experience, actively contributing to building and maintaining a first-class engineering team.
  • 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

  • Proven track record of professional software delivery using Go.
  • Hands-on experience developing highly concurrent distributed systems
  • 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
  • Experience with agile software development methodologies
  • 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.

  • Experience with container technologies (Docker, LXD, Kubernetes, etc.)
  • Experience doing development in C, C++, Rust, or other low-level programming languages.
  • Solid networking background and experience
  • Experience in the Linux and open-source software world
  • Experience with configuration management software (Ansible, Chef, Puppet, et al.)
  • Working knowledge of cloud computing
  • Passionate about software quality and testing
  • Experience with 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

About Canonical

Canonical is a pioneering tech firm that is at the forefront of the global move to open source. As the company that publishes Ubuntu, one of the most important open source projects and the platform for AI, IoT and the cloud, we are changing the world on a daily basis. We recruit on a global basis and set a very high standard for people joining the company. We expect excellence - in order to succeed, we need to be the best at what we do.

Canonical has been a remote-first company since its inception in 2004.​ Work at Canonical is a step into the future, and will challenge you to think differently, work smarter, learn new skills, and raise your game. Canonical provides a unique window into the world of 21st-century digital business.

Canonical is an equal opportunity employer

We are proud to foster a workplace free from discrimination. Diversity of experience, perspectives, and background create a better work environment and better products. Whatever your identity, we will give your application fair consideration.

#LI-remote 

Top Skills

C
C++
Go
Rust

Similar Jobs

2 Days Ago
Easy Apply
Remote
28 Locations
Easy Apply
Senior level
Senior level
Artificial Intelligence • Cloud • Information Technology • Machine Learning • Natural Language Processing • Software
As a Senior Java Developer, you will design and build APIs, develop scalable code, analyze application metrics, and maintain a high-performance translation management application. You will work with cutting-edge technologies, lead code reviews, and innovate new features to enhance user experience.
Top Skills: JavaJavaScriptPython
2 Days Ago
Easy Apply
Remote
28 Locations
Easy Apply
Senior level
Senior level
Cloud • Security • Software • Cybersecurity • Automation
The Senior Technical Instructor will deliver high-quality technical training on GitLab's platform, mentor other instructors, develop training content, and ensure training aligns with product updates. The role also involves maintaining product knowledge and collaborating with various teams to improve educational offerings.
Top Skills: GitlabKubernetes
2 Days Ago
Easy Apply
Remote
28 Locations
Easy Apply
Mid level
Mid level
Cloud • Security • Software • Cybersecurity • Automation
As an Intermediate Site Reliability Engineer focused on Environment Automation, you'll automate operations across numerous GitLab environments. Your responsibilities include building deployment packages, managing infrastructure as code, deploying microservices, maintaining observability, and enhancing security measures while collaborating with engineering teams to resolve architectural issues.
Top Skills: GoRuby

What you need to know about the Singapore Tech Scene

The digital revolution has driven a constant demand for tech professionals across industries like software development, data analytics and cybersecurity. In Singapore, one of the largest cities in Southeast Asia, the demand for tech talent is so high that the government continues to invest millions into programs designed to develop a talent pipeline directly from universities while also scaling efforts in pre-employment training and mid-career upskilling to expand and elevate its workforce.

Sign up now Access later

Create Free Account

Please log in or sign up to report this job.

Create Free Account