Software Engineer

Pioneer tech firm publishing Ubuntu, leading open source platform for AI, IoT and cloud computing.
Backend
Mid-Level Software Engineer
Remote
3+ years of experience
Enterprise SaaS · Cloud

Description For Software Engineer

Canonical, the company behind Ubuntu, is seeking a Software Engineer to join their team working on Juju, a significant open-source Go project that powers complex distributed software systems worldwide. Juju serves as the backbone for model-driven operations, enabling the management of complex software across public cloud, private cloud, Kubernetes, and bare-metal infrastructure. The role offers a unique opportunity to work in a distributed team environment with global reach, as Canonical has been remote-first since 2004.

The position involves contributing to highly concurrent, distributed systems that drive cloud automation and software operations at scale. You'll be part of a team that supports various internal and external clients, including Fortune 500 companies. The role requires expertise in Go programming and strong communication skills, with opportunities to work with cutting-edge technologies in cloud computing and containerization.

As part of Canonical's team, you'll benefit from a comprehensive package including education budget, parental leave, and mental health support. The company values diversity and maintains a discrimination-free workplace, ensuring fair consideration for all applicants. This role offers an excellent opportunity to work with a pioneering tech firm that's shaping the future of open source technology and cloud computing.

The position combines technical challenges with professional growth opportunities, including regular travel for team collaboration and events. You'll be contributing to significant open-source projects while working with talented engineers worldwide. Canonical offers a performance-driven environment with regular compensation reviews and various professional development opportunities.

Last updated a day ago

Responsibilities For Software Engineer

  • Contribute to design, delivery, and support of features in highly concurrent, distributed systems
  • Collaborate with distributed team
  • Debug issues and interact with upstream communities
  • Work with engineers and experts across various fields
  • Discuss and collaborate on solutions
  • Travel globally 2-4 weeks per year for events

Requirements For Software Engineer

Go
Linux
  • Experience developing software using Go
  • Excellent communication skills in English (verbal and written)
  • Exceptional academic track record
  • Willingness to travel up to 4 times a year

Benefits For Software Engineer

Education Budget
Parental Leave
Mental Health Assistance
  • Distributed work environment with twice-yearly team sprints
  • 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
  • Travel opportunities to meet colleagues
  • Priority Pass for travel and travel upgrades

Interested in this job?

Jobs Related To Canonical Software Engineer

Server Software Engineer

Join Canonical's Ubuntu Server Team to build and maintain critical server software packages, working remotely with a global team of open source experts.

Software Engineer

Remote Software Engineer position at Canonical, working on Juju open-source project, developing distributed systems using Go.

Golang Software Engineer

Golang Software Engineer position at Canonical, working on next-generation private cloud infrastructure with Go and C, remote opportunity with global impact.

Software Engineer - MAAS Team

Backend Software Engineer role at Canonical, developing MAAS (Metal As A Service) platform, focusing on Python, Go, and Linux technologies.

Ubuntu Quality Engineer

Ubuntu Quality Engineer position at Canonical, focusing on software quality, automation, and continuous integration for the Ubuntu ecosystem.