About this role.
Canonical, the company behind Ubuntu, is seeking an experienced Software Engineer to build and maintain a portfolio of Ubuntu-based container images. This role focuses on developing robust container images, automating CI/CD pipelines, writing tools for security compliance, and engaging with the open-source community. The position is fully remote within EMEA, with up to 15% global travel, and requires deep knowledge of Python, Linux, and container orchestration tools like Docker and Kubernetes. As part of a growing team, the engineer will contribute to fast-moving products like Rocks (OCI images) and mentor junior team members. This is an opportunity for a senior engineer who is passionate about open source and shaping high-quality container solutions.
Role DNA
A quick view of the complexity, pace, ownership and collaboration implied by the job description.
Job Complexity
4/5Pace & Pressure
4/5Autonomy Level
4/5Communication Load
4/5Salary analysis
Estimated compensation compared with the broader US market for similar roles.
Core skills
Skills and capabilities most closely associated with this opportunity.
Cover letter sample
Dear Hiring Team,
I am writing to express my strong interest in the Software Engineer - Python - Container Images position at Canonical. With extensive experience in Python development, CI/CD automation, and container technologies like Docker and Kubernetes, I am excited about the opportunity to contribute to Ubuntu-based container images and drive open-source adoption.
In my previous roles, I have built and maintained scalable containerized applications, implemented robust CI/CD pipelines, and collaborated with cross-functional teams to ensure high-quality, secure deployments. My deep understanding of Linux systems and GitOps principles aligns perfectly with the requirements of this role, and I am eager to bring my technical expertise to a globally distributed team.
I am particularly drawn to Canonical's mission of simplifying open-source application deployment and its commitment to long-term security. I am confident that my skills in mentoring junior engineers, engaging with communities, and delivering timely, high-quality software make me a strong fit for this position.
Thank you for considering my application. I look forward to the possibility of contributing to the innovative work at Canonical.
Sincerely,
Your Name
Sample interview questions
I have extensive experience building Docker images for production environments, using multi-stage builds to minimize size, and scanning images for vulnerabilities with tools like Trivy. I follow practices like using minimal base images, pinning versions, and running as non-root users to enhance security. For performance, I optimize layer caching and ensure the image is built with the right CPU architecture.
I would utilize a pipeline tool like GitHub Actions or Jenkins, with a matrix strategy to build for multiple architectures. The pipeline would include stages for linting, unit tests, building images, security scanning, and then publishing to registries like Docker Hub and Canonical's own registry. I would use GitOps principles, keeping pipeline config as code, and implement automated versioning with tag triggers for releases.
GitOps uses a Git repository as the single source of truth. For container images, I would store Kubernetes manifests or Helm charts in a repo, and use a tool like ArgoCD to sync the cluster state to the desired state in Git. This approach provides version control, audit trails, and easy rollbacks. Any changes to image versions would be done via pull requests, ensuring consistency.
I would start with a slim base image, install only necessary dependencies, and create a non-root user. I'd add HEALTHCHECK instructions, use environment variables for configuration, and write a detailed Dockerfile with comments. For documentation, I would provide a README with usage examples, build instructions, and security notes. I would also set up automated builds and vulnerability scanning.
I rely on clear, asynchronous communication using tools like Slack, email, and documented RFCs. For complex topics, I write clear design documents and use diagrams when needed. I'm comfortable participating in video calls and pair programming sessions, and I always document decisions in a shared repository to ensure transparency and alignment.
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.
Canonical is building a new generation of Ubuntu-based container images to simplify open-source application deployment across the world. These container images will be free to use with long-term security commitments, and engineered for performance, security and usability. As with Ubuntu, we will work in the open and welcome community participation.
In this role, you’ll be building and maintaining an ever-growing portfolio of container images while working with multiple teams, both inside and outside Canonical, to ensure these are of the highest quality and offer a seamless Ubuntu user experience. You will also be highly involved in the implementation and maintenance of the Continuous Integration and Continuous Delivery automation around these container images, for which you are expected to demonstrate deep insights into container-based DevOps.
You will be contributing to fast-moving products like Rocks (OCI images) and thus have the chance to help steer and consolidate this growing team. You’ll gain experience with numerous container technologies and open source projects, where your feedback and contributions will be critical to driving widespread container adoption. As an engineer, your seniority will be based on your software development background and ability to lead junior team members.
Come build a rewarding, meaningful career working with the best and brightest people in technology at Canonical. This is an exciting opportunity for experienced software engineers looking for a place to leave their mark, who are passionate about shaping an open source product with the highest quality, with and for the community!
**Location**: EMEA
This role entails
- 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
- Participate in strong engineering process through code and architectural review
- Contribute, both as a user and developer, to the improvement of our Python- and Go-based container-building tools
- 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
What we are looking for in you
- You are knowledgeable and passionate about software development
- You are a team player and have experience in collaborative development
- You have worked with CI/CD systems (e.g. Jenkins, GitHub Actions, Concourse CI, etc.)
- You are familiar with GitOps principles and workflows
- You have a track record of delivering timely, high-quality software
- You have experience building container images
- You master at least one container management/orchestration tool (e.g. Docker, Kubernetes, etc.)
- You have experience with Python
- You are experienced with Linux systems administration and package management
- You have strong written and verbal communication skills to convey technical concepts
- You bring clarity to technical and engineering discussions
- You are someone who strongly believes that sharing is caring, and knowledge is power
- Your skills range from those of a Graduate to a mid-senior Software Engineer
- You have a Bachelor’s or equivalent in Computer Science, STEM or a similar degree
What we offer colleagues
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 recognize outstanding performance. In addition to base pay, we offer a performance-driven annual bonus or commission. 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
- Team Member Assistance Program & Wellness Platform
- 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
Annual salary information is not provided for this position. Explore salary ranges for similar roles in our Salary Directory ›
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.






