Full Time

Distributed Systems Software Engineer, Python / Go

Canonical
$100,000 - $150,000* / year (about $48–$72 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

The Distributed Systems Software Engineer at Canonical will be instrumental in developing and maintaining scalable distributed systems. This role requires a deep understanding of programming in Python and Go, as well as a passion for open-source technology. The engineer will collaborate with cross-functional teams to design, implement, and optimize software solutions that enhance system performance and reliability while contributing to the broader open-source community.



Job Responsibilities

  • Design and implement distributed systems and microservices using Python and Go.
  • Collaborate with other engineering teams to define system architecture and interface specifications.
  • Optimize and troubleshoot performance issues in existing software components.
  • Contribute to the full software development lifecycle, including requirements gathering, design, coding, testing, and deployment.
  • Participate in code reviews and provide constructive feedback to peers.
  • Document all aspects of development processes and ensure adherence to best practices.
  • Engage with the open-source community to promote and support Canonical projects.


Qualifications

  • Bachelor's or Master's degree in Computer Science, Software Engineering, or a related field.
  • 2+ years of experience in software development, particularly with distributed systems.
  • Strong proficiency in Python and Go, with a thorough understanding of their ecosystems.
  • Experience with version control systems such as Git.
  • Proven ability to write clean, maintainable code and to work within collaborative teams.
  • Familiarity with containerization and orchestration tools such as Docker and Kubernetes.


Technologies & Tools

The role primarily utilizes a variety of technologies and tools including, but not limited to, Python and Go for software development, Git for version control, Docker for containerization, and Kubernetes for orchestration. Familiarity with cloud platforms such as AWS, Azure, or GCP is also advantageous, along with knowledge of monitoring tools to oversee system performance.



Ideal Candidates

Ideal candidates for this position are those who are passionate about distributed systems and open-source technologies. They should possess strong analytical skills and be able to approach complex problems methodically. Excellent communication and teamwork skills are crucial, as collaboration with varied teams is an essential aspect of this role. Additionally, candidates should be self-motivated and eager to contribute to a culture of innovation and improvement.

Not every state sets a number of job contacts a week. In California it is set for each person: your award notice gives your work search instructions. What it asks →

View Similar Jobs

Matches Jobs

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