Full Time

Distributed Systems Software Engineer, Python / Go

Canonical
$120,000 - $160,000* / year (about $58–$77 an hour)

Job Description

This job was posted over 30 days ago, so it has most likely closed. See newer jobs like it.

Written by AI from the job title and company, not by Canonical, so some details may not match this job. The employer's own page has the real description.

Overview

As a Distributed Systems Software Engineer at Canonical, you will be instrumental in designing and developing robust distributed systems that enhance our cloud and server offerings. You will play a pivotal role in building scalable solutions using Python and Go, collaborating with cross-functional teams to create efficient, high-performance applications. The position requires strong technical expertise in distributed computing paradigms, along with the ability to innovate and drive projects from conception to implementation.



Job Responsibilities

  • Design and implement high-quality distributed systems using Python and Go.
  • Develop algorithms and architectures that optimize the performance and scalability of applications.
  • Collaborate with product managers and other engineers to define system requirements and design specifications.
  • Conduct code reviews and mentor junior engineers to uphold engineering best practices.
  • Troubleshoot and resolve complex technical issues in a timely manner.
  • Stay updated with emerging technologies and practices in distributed computing and cloud services.
  • Document technical specifications and contribute to knowledge-sharing initiatives within the team.


Qualifications

  • Bachelor's degree in Computer Science, Engineering, or a related field.
  • Proven experience in software development with a focus on distributed systems.
  • Expert proficiency in programming languages, particularly Python and Go.
  • In-depth knowledge of cloud platforms and microservices architecture.
  • Experience with containerization technologies such as Docker and Kubernetes.
  • Strong understanding of networking principles and protocols.
  • Excellent problem-solving skills and ability to work within a team environment.


Technologies & Tools

This position entails working with a variety of modern tools and technologies including, but not limited to, Python, Go, Docker, Kubernetes, AWS, GCP, and various distributed databases. Familiarity with data streaming technologies, continuous integration and deployment tools, and monitoring systems will be advantageous in supporting the continuous improvement of our infrastructure.



Ideal Candidates

Ideal candidates for the Distributed Systems Software Engineer role at Canonical will possess a deep-seated passion for technology and innovation, along with a proactive approach to problem-solving. They are expected to be strong communicators, capable of articulating complex ideas clearly and effectively. Adaptability, an eagerness to learn, and a collaborative spirit are essential traits that will contribute to their success within Canonical's dynamic and forward-thinking environment.

In 98 of the 191 countries we compare, we found no unemployment benefit on official sites. Compare countries →

View Similar Jobs

Matches Jobs

Similar jobs which you may be interested in. Typically using your existing skillset.