Software Engineer - Python and K8s

Canonical - Jobs
Ottawa, ON, Canada
Full-time
We are sorry. The job offer you are looking for is no longer available.

Job Description

Job Description

Our mission is to reinvent the way companies manage their open source information systems - on public clouds and in their own data centres.

To achieve that we are building a new community around Python opscode for open source applications, running on Kubernetes.

We want to move all of Canonical and Ubuntu IS onto this new, open source codebase.

We are confident that we can dramatically improve the experience of running complex business operations - and then we can help our customers embrace those new techniques and products.

Traditionally, IS is an inward-facing operation. We would like to transform our IS team into an extension of the product engineering capability at Canonical.

Our internal workloads are in many cases the same open source workloads that our customers want to operate. This team will productise those workloads for real-time automated operations on Kubernetes.

This role is ideal for software engineers who enjoy Python, have a passion for distributed systems, and an interest in the entire Linux stack - from kernel to networking to virtualization and containers.

It is a role that requires rigour in both code and customer interactions. Our engineers are technically astute open source enthusiasts who are excited about cloud computing and are ready to join a global team charged with delivering world class services to our customers.

Strong Python development skills and familiarity with Kubernetes are key requirements of this role. You'll work closely with other teams in Canonical to ensure your products operate reliably, efficiently and scale to production sized workloads for our customers looking to adopt cutting-edge technology.

You will participate and be responsible for ensuring sound software architecture and follow best practices in software quality, testing and documentation.

What you'll do

  • Work in Python to design and deliver open source software operations code
  • Work across the entire Linux stack, from kernel, networking, storage, to applications
  • Learn to think rigorously about application and infrastructure reliability
  • Shape high quality open source monitoring and alerting infrastructure
  • Simplify open source operations for our customers and open source community
  • Demonstrate sound engineering design and testing principles in your code
  • Follow agile software development practices
  • Coach and develop your colleagues where you have insights
  • Grow a healthy, collaborative engineering culture in line with company values
  • Work from home with global travel once or twice a year for up to 2 weeks for events

Who you are

  • You love technology and working with brilliant people
  • You have a Bachelor's or equivalent in Computer Science, STEM or similar degree
  • You are experienced with Linux systems administration, package management, and operations
  • You have hands-on experience with at least one public cloud
  • You are familiar with Docker and Kubernetes
  • You are an experienced Python programmer and enjoy challenging projects
  • You understand the importance of reliable software and strive to design and code to that expectation
  • You are organized and want your team to deliver timely, high quality software

About Canonical

Canonical is a growing international software company that works with the open-source community to deliver Ubuntu, "the world's best free software platform".

Our mission is to realise the potential of free software in the lives of individuals and organisations. Our services are helping individuals and businesses worldwide to reduce costs, improve efficiency and enhance security with Ubuntu.

We are proud to foster a workplace free from discrimination. Diversity of experience, perspectives, and background create a better work environment and better products.

Whatever your identity we will give your application fair consideration.

LI-Remote #Stack

6 hours ago
Related jobs
E-Solutions
Ottawa, Ontario

ROLE: SOFTWARE VERIFICATION AND VALIDATION ENGINEER (TEST AUTOMATION) (PYTHON). Take up and perform verification and validation of software system. At least + years of experience as a verification and validation engineer and as an automation developer. Hands on experience with Android automation too...

Product and Technology
Canada
Remote

The Engineering Team Lead will report to the Head of Engineering and will be responsible for managing the engineers on their team, driving accountability within their team, and will be responsible for the output of their team. We are seeking an Software Engineer Lead with an active oriented mindset ...

Thales Canada
Ottawa, Ontario

DSEF products and capabilities; developing technical architectures, frameworks and strategies to meet DSEF system requirements; and analyzing, design and implement DSEF produced systems and architectures. Producing, documenting and managing system architectural designs and guidance, with contributio...

Telesat Canada
Ottawa, Ontario

As part of the Telesat LEO User Terminal team, the Senior Software System Engineer and EMS Architect provides Systems Engineering expertise supporting the overall and UT segments as well as architecture, development, design, and implementation of M&C systems. In addition, they will support the overa...

StackAdapt
Canada

Ranking the highest in performance by G2 Crowd for the fourth time, we're one of the fastest growing companies in Canada and ranks 6th in Deloitte's Technology Fast 50 ranking and 23rd in Fast 500 in North America. Our real-time advertising bidding system handles over 3,000,000 requests per second a...

Mannarino Systems & Software
Anywhere - Canada

Software Design and Verification DO-178 Engineers. Defining mechanisms and metrics to determine and drive improvements to test effectiveness, testing efficiency, and measure the overall quality of the catalog. Experience in programming languages such as Python/C++ and scripting to build test automat...

hireVouch
Canada or US, Remote, USA
Remote

Additionally, you would develop profiling and visualization tools and collaborate with other teams in identifying performance bottlenecks and conceiving creative solutions. These challenges include graph partitioning, scheduling, and place and route optimization. Strong C++ and python development sk...

Mannarino Systems & Software
Anywhere - Canada

Work with System Engineers and Embedded Software Developers to design software test cases and procedures to verify the applicable software requirements. Develop, debug, and maintain test scripts aligned with test cases, lead and/or conduct analysis of the software requirements or source code when ap...

Pratt & Whitney Canada
Ottawa, Ontario

Version Control Systems such as git Object Oriented programming skills Strong communication skills, both oral and written Detail oriented with strong analytical skills Knowledgeable in the software life cycle including definition, requirement analysis and design, implementation, validation and suppo...

reddit
Remote, Ontario, Canada
Remote

As a software engineer in the Ads Bidding and Pacing team, you will work closely with technical leaders to implement sophisticated optimization systems and make existing systems more robust. It’s built on shared interests, passion, and trust and is home to the most open and authentic conversations o...