Distributed Systems Software Engineer, Python / Go in Edinburgh
Distributed Systems Software Engineer, Python / Go

Distributed Systems Software Engineer, Python / Go in Edinburgh

Edinburgh Full-Time 28800 - 48000 £ / year (est.) No home office possible
Go Premium
C

At a Glance

  • Tasks: Build and validate resilient distributed systems using Python or Go.
  • Company: Join Canonical, a leader in cloud solutions and open-source software.
  • Benefits: Enjoy competitive pay, remote work, and a personal development budget.
  • Why this job: Make an impact on cutting-edge cloud technologies and AI/ML initiatives.
  • Qualifications: Experience in Python or Go, with strong object-oriented development skills.
  • Other info: Work remotely with a diverse team and enjoy global travel opportunities.

The predicted salary is between 28800 - 48000 £ per year.

We are seeking a software engineer with a passion for building and validating resilient distributed systems. At Canonical you can build a career and drive the success of those leveraging Canonical's Ubuntu and Juju to build multi-cloud deployable cloud 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 test automation, reporting and data analytics.

The Distributed Systems testing team at Canonical is responsible for ensuring the high quality of Canonical's Cloud solutions based on Juju, Terraform, OpenStack, Kubernetes when deployed under highly diverse conditions, from bare metal in customer data centers to public clouds like AWS, GCE, Azure. As a software engineer you will have the opportunity to develop CI pipelines which power Canonical's cloud integration testing and reporting. Upcoming initiatives you will have the opportunity to contribute to include expanding deployment capabilities to new clouds and developing AI/ML pipelines for automatic analysis of test results. A successful candidate is interested in tackling these problems, as well as imagining and leading new initiatives within the team and across Canonical.

Location: this is a Globally remote role

What your day will look like:

  • Create automated testing approaches and infrastructure for validating reliability, performance, and resilience of cloud orchestration tools and applications
  • Enable engineering teams across Canonical to develop software with confidence by making distributed system testing tooling available across the company
  • Enhance continuous integration pipelines for deploying and testing Canonical's cloud native products such as Kubeflow
  • Deploy, manage, and debug highly distributed systems
  • Monitor and report on automated testing efforts
  • Collaborate daily with a globally distributed team

What we are looking for in you:

  • Solid background in modern test processes and strategies
  • Experience with Python or Go development
  • Strong object oriented development skills
  • Ability to develop and ship production grade modern web applications
  • Working knowledge of continuous integration tools such as Jenkins, CircleCI, GitHub CI
  • Knowledge of networking technologies and fundamentals
  • Solid understanding of Linux system architecture
  • A capacity for complex abstract thinking
  • Capability for 2-4 weeks of international travel per year

Additional skills that you might also bring:

  • Collecting and analyzing large multidimensional datasets
  • Operating data platforms: key-value stores, relational or document databases, event buses
  • Work with cloud technologies such as OpenStack, Kubernetes, Terraform and AWS
  • Developing AI/ML pipelines

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 - we've been working remotely since 2004!
  • 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 from your team and others
  • Priority Pass for travel and travel upgrades for long haul company events

Canonical believes a diverse workforce enhances our ability to deliver world class software and services which meet the world's computing needs. We are committed to ensuring equal employment opportunities to all qualified individuals. All qualified applicants will receive consideration for employment without regard to race, color, religion, gender, gender identity or expression, sexual orientation, national origin, genetics, disability, age, or veteran status.

Seniority level: Entry level

Employment type: Full-time

Job function: Engineering and Information Technology

Industries: Software Development

Distributed Systems Software Engineer, Python / Go in Edinburgh employer: Canonical

At Canonical, we pride ourselves on being an exceptional employer, offering a globally remote work environment that fosters collaboration and innovation. Our commitment to employee growth is reflected in our generous personal learning budget and annual compensation reviews, ensuring that your contributions are recognised and rewarded. Join us to be part of a diverse team dedicated to building world-class cloud solutions while enjoying the flexibility and support that comes with working at a forward-thinking company.
C

Contact Detail:

Canonical Recruiting Team

StudySmarter Expert Advice 🤫

We think this is how you could land Distributed Systems Software Engineer, Python / Go in Edinburgh

✨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 experience with Python, Go, or any cool distributed systems work you've done.

✨Tip Number 3

Prepare for the interview by diving deep into Canonical's products. Understand how they use Juju, Kubernetes, and other tools. This will help you speak their language and show you're genuinely interested.

✨Tip Number 4

Apply through our website! It’s the best way to ensure your application gets seen. Plus, it shows you're serious about joining the team at Canonical.

We think you need these skills to ace Distributed Systems Software Engineer, Python / Go in Edinburgh

Python
Go
Distributed Systems
Test Automation
Data Analytics
Continuous Integration
Jenkins
CircleCI
GitHub CI
Networking Technologies
Linux System Architecture
Cloud Technologies
OpenStack
Kubernetes
Terraform

Some tips for your application 🫡

Tailor Your Application: Make sure to customise your CV and cover letter for the Distributed Systems Software Engineer role. Highlight your experience with Python or Go, and any relevant projects that showcase your skills in building resilient distributed systems.

Showcase Your Passion: We love seeing candidates who are genuinely excited about the role! Share your enthusiasm for cloud technologies and how you’ve tackled challenges in previous projects. This helps us see your fit within our team culture.

Be Clear and Concise: When writing your application, keep it straightforward. Use clear language and avoid jargon unless necessary. We appreciate a well-structured application that makes it easy for us to see your qualifications at a glance.

Apply Through Our Website: Don’t forget to submit your application through our official website! It’s the best way for us to receive your details and ensures you’re considered for the role. Plus, it’s super easy to do!

How to prepare for a job interview at Canonical

✨Know Your Tech Stack

Make sure you’re well-versed in Python and Go, as these are crucial for the role. Brush up on your knowledge of distributed systems and cloud technologies like Kubernetes and OpenStack. Being able to discuss your experience with these tools will show that you're ready to hit the ground running.

✨Showcase Your Problem-Solving Skills

Prepare to discuss specific challenges you've faced in previous projects, especially those related to building resilient systems. Use the STAR method (Situation, Task, Action, Result) to structure your answers, making it easy for the interviewer to follow your thought process.

✨Understand CI/CD Processes

Since the role involves enhancing continuous integration pipelines, be ready to talk about your experience with CI tools like Jenkins or CircleCI. Share examples of how you've implemented or improved CI/CD processes in past roles to demonstrate your hands-on experience.

✨Ask Insightful Questions

Interviews are a two-way street! Prepare thoughtful questions about Canonical's approach to distributed systems and their future initiatives. This not only shows your interest in the company but also helps you gauge if it's the right fit for you.

Distributed Systems Software Engineer, Python / Go in Edinburgh
Canonical
Location: Edinburgh
Go Premium

Land your dream job quicker with Premium

You’re marked as a top applicant with our partner companies
Individual CV and cover letter feedback including tailoring to specific job roles
Be among the first applications for new jobs with our AI application
1:1 support and career advice from our career coaches
Go Premium

Money-back if you don't land a job in 6-months

C
  • Distributed Systems Software Engineer, Python / Go in Edinburgh

    Edinburgh
    Full-Time
    28800 - 48000 £ / year (est.)
  • C

    Canonical

    250-500
Similar positions in other companies
UK’s top job board for Gen Z
discover-jobs-cta
Discover now
>