Distributed Systems Software Engineer, Python / Go

Canonical - Jobs
Rochester, NY, US
Full-time

Job Description

Job Description

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 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.

30+ days ago
Related jobs
Promoted
Canonical - Jobs
Rochester, New York

As a software engineer on the team, you'll be contributing to the development of Juju, a large open-source Go project that powers complex distributed software systems across the world. The role of a Software Engineer at Canonical. Contribute to the design, delivery, and support of features in a ...

Palantir
New York, US

Software Engineers at Palantir build software at scale to transform how organizations globally use data. As a Software Engineer on Developer Productivity, you'll identify, develop, & drive investments to improve the velocity & quality of our engineering, as well as bolster the happiness & productivi...

Promoted
Canonical - Jobs
Rochester, New York

As part of Cloud Engineering, you'll be building modeling software to drive systems such as OpenStack, Ceph, and Kubernetes with a focus on distributed storage and Ceph. Write high quality, rigorously designed Python and Golang software. The role of a Software Engineer, Ceph & Distributed St...

JPMorgan Chase Bank, N.A.
New York, US

Job responsibilities * Executes creative software solutions through design, development, and technical troubleshooting with ability to think beyond routine or conventional approaches to build solutions or break down technical problems * Develops secure high-quality production cod...

Promoted
Canonical - Jobs
Rochester, New York

Canonical is hiring a software engineer to join the Server Certification team. We work at the interface of hardware and software, so the ideal candidate is a Python developer with a problem solving mindset, familiar with hardware. We focus on the interaction between server hardware and Ubuntu Linux,...

Channel Factory
NY, US
Remote

Our Product team is in search of an innovative and dedicated Software Engineer with Fullstack Python / Django & ElasticSearch experience to join our growing team. They will be expected to work on a variety of projects and should have a great deal of experience with the software engineering life ...

Promoted
Canonical - Jobs
Rochester, New York

This is an exciting opportunity for a software engineer passionate about open source software, Linux, Python, and web services at scale. As Landscape software engineer you will be responsible for contributing on a distributed development team participating in all facets of the development process. E...

Cockroach Labs
New York, US

We are looking for a backend software engineer excited about growing an open-source, cloud-native distributed SQL database to join our KV team. In the first month, you will join your engineering team & start to learn about our production systems, software development workflow, & the architecture of ...

Fastly
New York, US

The platform is designed to take advantage of the modern internet, to be programmable, & to support agile software development. ...

JPMorgan Chase Bank, N.A.
New York, US

Collaborates with Quant Researchers and Business Users to document functional requirements * Writes high quality code in python and React/Java Script to build best in class applications what would be used directly by the business users * Gains exposure to Pricing, Risk and Trade ...