Taro Logo

Golang Software Engineer

Canonical is a pioneering tech firm at the forefront of the global move to open source, publishing Ubuntu, one of the most important open source projects and the platform for AI, IoT and the cloud.
Backend
Mid-Level Software Engineer
Remote
AI · Enterprise SaaS · Cloud
This job posting may no longer be active. You may be interested in these related jobs instead:

Description For Golang Software Engineer

Canonical is seeking a Golang Software Engineer to join their mission of building a next-generation private cloud infrastructure. The role involves working on the low-level Go codebase that bridges the REST API with C libraries managing containers and virtual machines. The ideal candidate will have system-level development experience and be comfortable working across the entire software stack, from kernel features to upper-level management APIs.

Key responsibilities include:

  • Designing and implementing system-level Go code
  • Modeling data and implementing storage in dqlite (SQL) database
  • Maintaining code quality through various testing methods
  • Collaborating with a distributed team

The position offers:

  • Remote work with global travel opportunities
  • Personal learning and development budget
  • Performance-driven annual bonus
  • Various benefits including holiday leave, parental leave, and travel perks

Canonical values diversity and fosters a workplace free from discrimination. This role provides an opportunity to make a significant impact on modern cloud computing technologies while working in a fast-paced, learning-oriented environment.

Join Canonical to challenge yourself, think differently, and be part of a company that's changing the world through open-source technology.

Last updated 8 months ago

Responsibilities For Golang Software Engineer

  • Design, implement and document system level Go code
  • Model data, design database schema and implement data storage in a dqlite (SQL) database
  • Maintain code quality through static analysis, unit and system tests
  • Collaborate proactively with a distributed team
  • Discuss ideas and collaborate on finding good solutions
  • Work from home with global travel 2 to 4 weeks/year for internal and external events

Requirements For Golang Software Engineer

Go
Linux
  • Experience programming in Go and C
  • Knowledge in networking and storage technologies
  • Experience with cloud computing, virtualisation, containers, or distributed systems
  • Bachelor's or equivalent in Computer Science, STEM or similar degree
  • Curiosity, flexibility, articulation, and accountability
  • Soft skills, enterprise thinking, and self-motivation

Benefits For Golang Software Engineer

Education Budget
Parental Leave
  • 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?