Software Engineer - Go - Container Images

Canonical is a leading provider of open source software and operating systems to the global enterprise and technology markets.
Backend
Mid-Level Software Engineer
Remote
501 - 1,000 Employees
3+ years of experience
Enterprise SaaS
This job posting may no longer be active. You may be interested in these related jobs instead:
Software Engineer - Python/Golang - Kubernetes

Remote Software Engineer position at Canonical, focusing on Python/Golang development for Kubernetes, offering comprehensive benefits and global collaboration opportunities.

Software Engineer - Solutions Engineering

Software Engineer role at Canonical focusing on Python development for infrastructure-as-code solutions, working remotely with global teams to enhance Ubuntu and cloud operations.

IoT/Data Platform Engineer

Remote IoT/Data Platform Engineer position at Canonical, building scalable telemetry and connectivity solutions using Python and Golang.

Software Engineer (Python/Linux/Packaging)

Software Engineering role at Canonical focusing on Python tools and Linux packaging systems, working remotely on developer experience and build tooling.

Linux devices software engineer - snapd

Remote Linux devices software engineer position at Canonical, working on snapd team to develop mission-critical Golang code for software delivery and container management.

Description For Software Engineer - Go - Container Images

Canonical, the company behind Ubuntu, is seeking a Software Engineer specializing in Go for their Container Images team. This role involves developing tools and technology for building and maintaining a new generation of Ubuntu-based container images. You'll work on products like Rocks (OCI images) and Chisel, contributing to fast-moving projects that simplify open-source application deployment worldwide.

Key responsibilities include building robust container images, implementing CI/CD processes, writing security and compatibility assessment tools, and engaging with the open-source community. You'll work in Go to deliver new functionalities and participate in code reviews and architectural discussions.

The ideal candidate has significant experience with Go, container technologies, and Linux systems administration. You should be comfortable with CI/CD systems and have a track record of delivering high-quality software. Strong communication skills and the ability to work in a globally distributed team are essential.

Canonical offers a flexible, remote-first work environment with opportunities for global travel and collaboration. Benefits include a personal development budget, annual compensation reviews, and various leave options. This role provides an exciting opportunity to shape the future of container technology while working with a leading open-source company.

Last updated 8 months ago

Responsibilities For Software Engineer - Go - Container Images

  • Build robust, scalable, leading-edge container images
  • Work on automated CI/CD processes for building, testing and publishing our container images
  • Write tools and tests for assessing security compliance and cloud-native compatibility
  • Work in Go to deliver new functionalities to our container-building tools
  • Participate in strong engineering process through code and architectural review
  • Provide technical feedback for the team's decision-making process
  • Engage with the open-source community as a subject-matter expert
  • Grow our knowledge base and write documentation
  • Work in a collaborative, agile and globally distributed environment
  • Mentor and help hiring
  • Work from home with global travel up to 15% for internal and external events

Requirements For Software Engineer - Go - Container Images

Go
Linux
Kubernetes
  • Knowledgeable and passionate about software development
  • Team player with experience in collaborative development
  • Experience with CI/CD systems (e.g. Jenkins, GitHub Actions, Concourse CI, etc.)
  • Track record of delivering timely, high-quality software
  • Experience with container images and containerised operations
  • Mastery of at least one container management/orchestration tool (e.g. Docker, Kubernetes, etc.)
  • Significant experience with Go
  • Experience with Linux systems administration and package management
  • Strong written and verbal communication skills
  • Ability to bring clarity to technical and engineering discussions
  • Bachelor's or equivalent in Computer Science, STEM or a similar degree

Benefits For Software Engineer - Go - Container Images

Education Budget
  • Distributed work environment with twice-yearly team sprints in person
  • 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
  • Priority Pass, and travel upgrades for long haul company events

Interested in this job?