Full Time

Distributed Systems Software Engineer, Python / Go

Canonical
$110,000 - $160,000* / year (about $53–$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.

Job Overview

The Distributed Systems Software Engineer at Canonical will engage in the design, development, and implementation of high-performance distributed systems using Python and Go. This role is critical in enhancing the scalability and reliability of our cloud services and infrastructure. The successful candidate will collaborate with cross-functional teams to build robust software solutions that cater to our global user base, ensuring optimal resource utilization and fault tolerance across distributed environments.



Job Responsibilities

  • Design, implement, and maintain scalable distributed systems using Python and Go.
  • Collaborate with development and operations teams to identify and resolve system-level issues.
  • Develop automated testing and deployment processes to enhance software reliability.
  • Work on performance tuning and optimization of existing distributed applications.
  • Participate in code reviews and contribute to team discussions regarding best practices.
  • Document design specifications, architectures, and systems for future reference.


Qualifications

  • Bachelor’s degree in Computer Science, Software Engineering, or a related field.
  • Minimum of 3 years of experience in software development with a focus on distributed systems.
  • Proficiency in programming languages, particularly Python and Go.
  • Strong understanding of distributed system concepts, algorithms, and design patterns.
  • Experience with container orchestration tools like Docker and Kubernetes.
  • Familiarity with cloud platforms and microservices architecture.
  • Excellent problem-solving skills and ability to work collaboratively in a team environment.


Technologies & Tools

The role will primarily involve working with technologies and tools such as Python, Go, Docker, Kubernetes, and various cloud services. Familiarity with CI/CD pipelines, monitoring tools, and microservices architectures will also be essential to effectively contribute to the distributed systems and ensure maintainability and performance of our software solutions.



Ideal Candidates

Ideal candidates for the Distributed Systems Software Engineer position at Canonical will possess a strong analytical mindset and a passion for building efficient, scalable systems. They will be team-oriented with excellent communication skills, able to engage with technical and non-technical stakeholders alike. The ability to think critically and demonstrate a proactive approach to problem-solving will be indispensable in navigating the complexities of distributed systems and delivering high-quality software solutions.

Unemployment does not last the same number of weeks everywhere. In Utah it is paid for 10 to 26 weeks, depending on your earnings. How it works there →

View Similar Jobs

Matches Jobs

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