At a Glance
- Tasks: Create automated testing for resilient distributed systems and enhance cloud-native product pipelines.
- Company: Join Canonical, a leader in open source software with a global team.
- Benefits: Enjoy a competitive salary, personal development budget, and flexible remote work.
- Why this job: Make an impact on cutting-edge technology while collaborating with a diverse global team.
- Qualifications: Experience in Python or Go, modern test processes, and strong problem-solving skills.
- Other info: Travel opportunities and a supportive workplace culture focused on diversity.
The predicted salary is between 28800 - 48000 £ per year.
Join to apply for the Distributed Systems Testing Software Engineer, Python / Go role at Canonical. Canonical is a leading provider of open source software and operating systems to the global enterprise and technology markets. Our platform, Ubuntu, is 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 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.
We are hiring a Software Engineer for Distributed Systems Testing with a passion for building and validating resilient distributed systems. You will drive the success of those leveraging Canonical's Ubuntu and Juju to build multi-cloud deployable applications. We see quality engineering as a first class engineering practice and are looking for people who can bring deep engineering insights and a data driven approach to testing, test automation, reporting and data analytics.
Responsibilities- Creating automated testing approaches and infrastructure for validating reliability, performance, and resilience of cloud orchestration tools and applications
- Enabling engineering teams across Canonical to develop software with confidence by making distributed system testing tooling available across the company
- Enhancing continuous integration pipelines for deploying and testing Canonical's cloud native products such as Kubeflow
- Deploying, managing, and debugging highly distributed systems on clouds and bare metal
- Monitoring and reporting on automated testing efforts
- Collaborating daily with a globally distributed team
- Solid background in modern test processes and strategies
- Experience with Python or Go development
- Strong object oriented development skills
- Working knowledge of continuous integration tools such as Jenkins, CircleCI, GitHub Actions
- Knowledge of networking technologies and fundamentals
- Solid understanding of the Linux system architecture
- Complex abstract thinking
- 2-4 weeks of international travel per year
- Ability to develop and ship modern production grade web applications
- Ability to operate data platforms: key-value stores, relational or document databases, event buses
- Data collection and analytics skills for large multidimensional datasets
- Experience with AI/ML pipelines
- Experience with cloud technologies such as OpenStack, Kubernetes, Terraform and AWS
- 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
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.
Distributed Systems Testing Software Engineer, Python / Go in Manchester employer: Canonical
Contact Detail:
Canonical Recruiting Team
StudySmarter Expert Advice 🤫
We think this is how you could land Distributed Systems Testing Software Engineer, Python / Go in Manchester
✨Tip Number 1
Network like a pro! Reach out to folks in the industry, especially those at Canonical. A friendly chat can open doors and give you insights that a job description just can't.
✨Tip Number 2
Show off your skills! If you've got a GitHub or portfolio, make sure it's up to date. Share projects that highlight your Python or Go expertise, especially anything related to distributed systems.
✨Tip Number 3
Prepare for the interview by brushing up on your knowledge of cloud technologies and CI tools. Be ready to discuss how you would approach testing in a distributed environment—this is your chance to shine!
✨Tip Number 4
Don't forget to apply through our website! It’s the best way to ensure your application gets seen by the right people. Plus, it shows you're serious about joining the Canonical team.
We think you need these skills to ace Distributed Systems Testing Software Engineer, Python / Go in Manchester
Some tips for your application 🫡
Tailor Your CV: Make sure your CV reflects the skills and experiences that match the job description. Highlight your Python or Go development experience and any relevant testing strategies you've used. We want to see how you can contribute to our distributed systems!
Craft a Compelling Cover Letter: Your cover letter is your chance to shine! Share your passion for building resilient distributed systems and how you can enhance our testing processes. Let us know why you're excited about working with Canonical and our cloud-native products.
Showcase Your Projects: If you've worked on any projects related to cloud technologies, automated testing, or CI tools, make sure to mention them. We love seeing real-world applications of your skills, so don’t hold back on sharing your achievements!
Apply Through Our Website: We encourage you to apply directly through our website. It’s the best way to ensure your application gets into the right hands. Plus, it shows us you’re serious about joining our team at Canonical!
How to prepare for a job interview at Canonical
✨Know Your Tech Stack
Make sure you brush up on your Python and Go skills before the interview. Be ready to discuss your experience with these languages, especially in the context of distributed systems. Familiarity with continuous integration tools like Jenkins or GitHub Actions will also give you an edge.
✨Understand Canonical's Products
Dive deep into Canonical's offerings, particularly Ubuntu and Juju. Understanding how these tools work and their role in cloud orchestration will show your genuine interest in the company and the position. It’s a great way to demonstrate that you’re not just looking for any job, but this specific one.
✨Prepare for Problem-Solving Questions
Expect to tackle some complex abstract thinking problems during the interview. Brush up on your problem-solving skills and be prepared to explain your thought process clearly. This is your chance to showcase your analytical abilities and how you approach challenges in distributed systems.
✨Show Your Collaborative Spirit
Since Canonical values global collaboration, be ready to discuss your experiences working in distributed teams. Share examples of how you've successfully collaborated with colleagues from different locations and cultures. This will highlight your adaptability and teamwork skills, which are crucial for this role.