Canonical is seeking a Golang software engineer to develop and maintain system-level code for cloud infrastructure, focusing on data modeling, storage, and low-level system integration within a distributed, remote team environment.
Key Responsibilities
Design, implement, and document system-level Go code
Model data, design database schema, and implement data storage using dqlite SQL database
Maintain code quality through static analysis, unit, and system testing
Collaborate proactively with a distributed team to discuss ideas and find solutions
Requirements
Experience programming in Go and C
Knowledgeable in networking and storage technologies
Experience with two or more of cloud computing, virtualisation, containers, distributed systems, open source community
Bachelor's or equivalent degree in Computer Science, STEM, or a similar field
Ability to design, implement, and document system level Go code
Ability to model data, design database schema, and implement data storage in a dqlite SQL database
Ability to maintain code quality through static analysis, unit tests, and system tests
Willingness to collaborate proactively with a distributed team and discuss ideas to find good solutions
Willingness to work from home with global travel of 2 to 4 weeks per year for internal and external events
Benefits & Perks
Compensation is based on geographical location, experience, and performance, with annual reviews and more frequent reviews for graduates and associates
Performance-driven annual bonus
Distributed work environment with twice-yearly in-person 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
Opportunity to travel to new locations to meet colleagues
Priority Pass and travel upgrades for long haul company events
Ready to Apply?
Join Canonical and make an impact in renewable energy