Distributed Systems Software Engineer, Python / Go

Canonical - Jobs
San Jose, CA, 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.

3 days ago
Related jobs
Promoted
VirtualVocations
Fremont, California

Software Engineer - Distributed Systems (AWS Lambda). ...

Promoted
Apple
Cupertino, California

Software Engineer; you will develop, document, and maintain code and unit tests by utilizing software development environments and programming languages (Java) You will interface with Business, application owners, developers and project managers to take projects from inception to completion Be respo...

Amazon Development Center U.S., Inc.
Palo Alto, California

We are looking for developers with expertise and passion for building large scale distributed systems. Experience with identity providers and certificate management systems, highly available/fault tolerant systems, and operating complex services running in the cloud are all pluses. As you design and...

NVIDIA
Santa Clara, California

We are now hiring a Systems Software Engineer for the Tegra Solutions Engineering team focusing on Camera, Multimedia and Graphics for the self-driving platform architectures. Collaborate with software engineers, hardware and arch teams to design, develop, validate and optimize software on NVIDIA's ...

Databricks
Mountain View, California

A passion for database systems, storage systems, distributed systems, language design, and/or performance optimization. To make it happen we’re building multi-cloud systems at every corner of the data ecosystem, from query engines, vector databases, training pipelines, and storage systems, down to t...

Protingent
Santa Clara, California

Senior Imaging Systems Software Engineer. Protingent Staffing has an exciting direct hire opportunity for Senior Imaging Systems Software Engineer with our client located in Santa Clara, CA. As a Senior Imaging Systems Software Engineer, you will work on characterization, optimization, and quantitat...

Iron Systems
Sunnyvale, California

Iron Systems is an innovative, customer-focused provider of custom-built computing infrastructure platforms such as network servers, storage, OEM/ODM appliances & embedded systems. Job Title: Embedded Software Engineer III. Our team is looking for a candidate who is interested in working with softwa...

Intuit
Mountain View, California

Demonstrated lead with scale —understands the holistic view, work across boundaries at which systems collide and intersect; define Excel at delivering outcomes within and across other organizations and removed mismatches between organizational, technological and governance boundaries. To drive ongoin...

ByteDance
San Jose, California

Come and join us, you will get the chance of building large-scale machine learning systems, and working with the best AI system and algorithm researchers and engineers. As a vital AI infrastructure for the company, our machine learning system integrates our most up-to-date R&D results in AI algorith...

PayPal
San Jose, California

For the majority of employees, PayPal's balanced hybrid work model offers 3 days in the office for effective in-person collaboration and 2 days at your choice of either the PayPal office or your home workspace, ensuring that you equally have the benefits and conveniences of both locations.At PayPal,...