Microservices Engineer

Remote from
🌐 Anywhere
Annual salary
Undisclosed
Salary information is not provided for this position. Check our Salary Directory to estimate the average compensation for similar roles.
Employment type
Full Time,
Job posted
Apply before
21 Aug 2026
Views / Applies
42 / 2

About Canonical Ltd.

Trusted open source for enterprises

Actively Hiring
Verified job posting
This job post has been manually reviewed for authenticity and compliance.

AI Summary

Canonical, the company behind Ubuntu, is hiring a Microservices Engineer to work on back-end REST APIs using Go and Python. The role involves designing scalable services for millions of clients, collaborating globally, and contributing to open-source communities. Candidates need strong technical skills, a degree in Computer Science/STEM, and experience with databases, CI/CD, and Linux. This is a senior-level position requiring leadership and a results-oriented mindset. The job offers remote work with bi-annual travel for company events.

Role DNA

Job Complexity
Easy Hard
Pace & Pressure
Relaxed Fast-paced
Autonomy Level
Guided Full Ownership
Communication Load
Independent Highly Collaborative
AI Insight The role demands advanced proficiency in Go/Python, microservices design, distributed systems, and DevOps, along with a strong academic background and leadership ability, placing it at a high difficulty level.

Salary Analysis

Median Highly Competitive
$140,000
US Market
$100k – 180k
0 $198k
AI Insight The offered salary is not specified. Compared to the US market, the median for a senior microservices engineer is around $140,000, so the compensation is likely competitive given Canonical's global presence and profitability.

Dear Hiring Team,

I am excited to apply for the Microservices Engineer position at Canonical. With a strong background in Go and Python, and extensive experience designing scalable REST APIs, I am eager to contribute to Ubuntu's growth. My expertise in database design, CI/CD, and distributed systems aligns well with the demands of this role.

I have a proven track record of delivering high-quality software in globally distributed teams, and I thrive in collaborative environments that require technical leadership. I am particularly drawn to Canonical's mission of advancing open source and its impact on cloud, AI, and IoT.

Thank you for considering my application. I look forward to the opportunity to discuss how I can help shape the future of Ubuntu's services.

Can you describe your experience designing and implementing a microservices architecture? What trade-offs did you consider?
I led the redesign of a monolithic e-commerce platform into microservices. We decomposed the system into 15 services, each with its own database. Key trade-offs included consistency vs. availability (we chose eventual consistency for most services) and service granularity. We used message queues for async communication and implemented API gateways for routing.
How would you handle a sudden spike in traffic for a microservice?
I'd implement auto-scaling using Kubernetes or similar, with metrics like CPU, memory, and request latency. Additionally, I'd use a circuit breaker pattern to prevent cascading failures and consider caching frequently accessed data. Load testing and performance profiling are essential to identify bottlenecks.
Explain your approach to API design and documentation for a team of developers.
I advocate for a contract-first approach using OpenAPI/Swagger. We design endpoints with clear naming, consistent error handling, and versioning from the start. Documentation is generated from the spec and maintained collaboratively. I encourage a design review process where team members provide feedback before implementation.
How do you ensure the resilience of a distributed system?
Resilience involves redundancy, graceful degradation, and fault isolation. I use patterns like retry with exponential backoff, circuit breakers, and bulkheads. Multi-region deployment with load balancing helps with failover. Monitoring and alerting (e.g., Prometheus, Grafana) provide visibility into system health.
Describe a time you had to debug a performance issue in a production microservice. What steps did you take?
I once encountered high latency in an order service. I started by analyzing metrics and logs to isolate the bottleneck, which was a slow database query. I used distributed tracing to pinpoint the exact service and database call. The fix involved adding proper indexes and optimizing the query. I then set up performance regression tests to prevent recurrence.

Canonical is a leading provider of open source software and operating systems to the global enterprise and technology markets. Our platform, Ubuntu, is very widely used in breakthrough enterprise initiatives such as public cloud, data science, AI, engineering innovation, and IoT. Our customers include the world’s leading public cloud and silicon providers, and industry leaders in many sectors. The company is a pioneer of global distributed collaboration, with 1200+ colleagues in 75+ countries and very few office-based roles. Teams meet two to four times yearly in person, in interesting locations around the world, to align on strategy and execution.

The company is founder-led, profitable, and growing.

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 of software. 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. Most colleagues at Canonical have worked from home since our 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

Apply now >

This job listing has been manually reviewed by the Jobicy Trust & Safety Team for compliance with our posting guidelines, including verification of the company's legitimacy, accuracy of job details, clarity of remote work policy, and absence of misleading or fraudulent content.

How to apply

Did you apply? Let us know, and we’ll help you track your application.

See a few more

Similar Software Engineering remote jobs

Jobs Talent Salaries
Menu