Microservices Engineer
This is a general selection track for teams that focus on back-end REST API microservices engineering in Go and Python. It covers all levels of seniority. Apply here if you are already an outstanding engineer with crisp and well-articulated views on APIs, microservice design, engineering processes and DevOps.
Our services need to scale to handle millions of Ubuntu clients, and collaboration across thousands of community members. They are also central to the health of critical infrastructure across the globe. As Ubuntu has been embraced by mainstream enterprise computing through the adoption of cloud and developer-centric tech strategy, the quality of these services has become more important to customers and users.
While Ubuntu has been enormously successful and in many senses leads the industry, we think we can substantially improve our practices, quality and performance in the web services domain. We are growing our teams, and in doing so we aim to level up our insights on scalability, performance, resilience and DevOps practices.
Key areas of interest for us are:
API design, documentation, and governance
Database performance design considerations and skills
Multi-region service delivery for resilience and performance
Fuzzing and other proactive security analysis techniques
Tracing and profiling for distributed systems insights
Next-generation DevOps practices
Location: we have microservices teams with open roles in every time zone.
What your day will look like
Write high-quality, well-designed, and robust software that works at scale
Design APIs and software architecture for collegial review
Write tests that validate software behaviour
Build and maintain reliable, fault-tolerant applications and services
Collaborate proactively with a globally distributed team
Display technical leadership internally and within our external communities
Debug issues and produce high-quality solutions to resolve them
Contribute to technical documentation to make it the best of its kind
Discuss, contribute to, and collaborate across teams at Canonical
Work from home with global travel twice annually for company events
What we are looking for in you
An exceptional academic track record from both high school and university
Undergraduate degree in Computer Science or STEM, or a compelling narrative about your alternative path
Drive and a track record of going above-and-beyond expectations
Proficiency in Python and / or Go
History of writing modern, maintainable software
Experience with relational and non-relational database systems
Continuous integration and continuous delivery experience
Experience with systems programming or scalable web services
Professional written and spoken English
Experience with Linux (Debian or Ubuntu preferred)
Excellent interpersonal skills, curiosity, flexibility, and accountability
Passion, thoughtfulness, and self-motivation
Excellent communication and presentation skills
Result-oriented, with a personal drive to meet commitments
Ability to travel twice a year, for company events up to two weeks each
Additional skills that you might also bring
Experience with container tech such as LXD, Docker, and Kubernetes
Understanding of build systems and toolchains
Experience with cross-compilation
Experience with hyperscale public clouds and / or private clouds
Experience with designing, building, and running distributed systems
Performance engineering and security experience
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
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
About Canonical
Canonical is a pioneering tech firm 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. Working here is a step into the future, and will challenge you to think differently, work smarter, learn new skills, and raise your game.
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
About the job
Apply for this position
Microservices Engineer
This is a general selection track for teams that focus on back-end REST API microservices engineering in Go and Python. It covers all levels of seniority. Apply here if you are already an outstanding engineer with crisp and well-articulated views on APIs, microservice design, engineering processes and DevOps.
Our services need to scale to handle millions of Ubuntu clients, and collaboration across thousands of community members. They are also central to the health of critical infrastructure across the globe. As Ubuntu has been embraced by mainstream enterprise computing through the adoption of cloud and developer-centric tech strategy, the quality of these services has become more important to customers and users.
While Ubuntu has been enormously successful and in many senses leads the industry, we think we can substantially improve our practices, quality and performance in the web services domain. We are growing our teams, and in doing so we aim to level up our insights on scalability, performance, resilience and DevOps practices.
Key areas of interest for us are:
API design, documentation, and governance
Database performance design considerations and skills
Multi-region service delivery for resilience and performance
Fuzzing and other proactive security analysis techniques
Tracing and profiling for distributed systems insights
Next-generation DevOps practices
Location: we have microservices teams with open roles in every time zone.
What your day will look like
Write high-quality, well-designed, and robust software that works at scale
Design APIs and software architecture for collegial review
Write tests that validate software behaviour
Build and maintain reliable, fault-tolerant applications and services
Collaborate proactively with a globally distributed team
Display technical leadership internally and within our external communities
Debug issues and produce high-quality solutions to resolve them
Contribute to technical documentation to make it the best of its kind
Discuss, contribute to, and collaborate across teams at Canonical
Work from home with global travel twice annually for company events
What we are looking for in you
An exceptional academic track record from both high school and university
Undergraduate degree in Computer Science or STEM, or a compelling narrative about your alternative path
Drive and a track record of going above-and-beyond expectations
Proficiency in Python and / or Go
History of writing modern, maintainable software
Experience with relational and non-relational database systems
Continuous integration and continuous delivery experience
Experience with systems programming or scalable web services
Professional written and spoken English
Experience with Linux (Debian or Ubuntu preferred)
Excellent interpersonal skills, curiosity, flexibility, and accountability
Passion, thoughtfulness, and self-motivation
Excellent communication and presentation skills
Result-oriented, with a personal drive to meet commitments
Ability to travel twice a year, for company events up to two weeks each
Additional skills that you might also bring
Experience with container tech such as LXD, Docker, and Kubernetes
Understanding of build systems and toolchains
Experience with cross-compilation
Experience with hyperscale public clouds and / or private clouds
Experience with designing, building, and running distributed systems
Performance engineering and security experience
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
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
About Canonical
Canonical is a pioneering tech firm 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. Working here is a step into the future, and will challenge you to think differently, work smarter, learn new skills, and raise your game.
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