HPC Software Engineer

Canonical - Jobs
Portland, OR, US
Full-time

Job Description

Job Description

HPC is an important and technically challenging compute domain, with specialised tooling and a very high expectation of precision, efficiency and automation.

This role is for a software engineer to join our HPC team to deliver an outstanding HPC experience - from bare metal to public cloud - as part of the broader Ubuntu platform.

We are looking for a range of skills and experience, and will work on everything from the kernel to Debian packaging, but the heart of our effort will be Python software development for automation of key software in the HPC sphere.

Our focus is on delivering a world class experience for the operation of the HPC cluster itself.

You will be part of the team that delivers charms that deploy and manage the HPC cluster and provide HPC software packages.

To succeed in this application you must be outstanding at maths and sciences, have built high quality software, have learned about open source ideally by working on it directly, and be looking for an engineering role with a company that makes mission-critical products for the global market.

You should also be familiar with the open source environment, and want to build products in partnership with a community.

Ideally, you should have some experience of high performance computing environments and a desire to unlock HPC for the world.

For this role you must have experience with Python. Experience in HPC environments is a strong advantage. Familiarity with HPC hardware and software is also a strong advantage - delivering great experiences with Infiniband, RDMA, CUDA, MPI, Slurm, Lustre, Singularity and related technologies will be central to this team's work.

It will also be advantageous to have experience with Docker image design and operations, and public cloud image design and operations.

Location : This role will be based remotely in EMEA or the Americas regions

What your day will look like

  • Write high quality, rigorously designed Python software
  • Collaborate proactively with a globally distributed team
  • Debug issues and produce high quality code to fix them
  • Contribute to technical documentation that define best practices for authoring high quality operators
  • Discuss ideas and collaborate on finding good solutions

What we are looking for in you

  • You have a Bachelor's or equivalent in Computer Science, STEM or similar degree
  • You have experience with writing modern, maintainable Python
  • You love technology and working with brilliant people
  • You are curious, flexible, articulate, and accountable
  • You value soft skills and are passionate, enterprising, thoughtful, and self-motivated
  • You have interest and experience with two or more of the following : Linux, Kubernetes, Public cloud, OpenStack, LXC / LXD, Python, Go, Debian packaging
  • An exceptional academic track record from both high school and preferably university
  • Willingness to travel up to 4 times a year for internal events

Additional skills that you might also bring

  • Experience operating HPC clusters in production
  • Experiences with Infiniband, RDMA, CUDA, MPI, Slurm, Lustre, and / or Singularity

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

About Canonical

Canonical is a pioneering tech firm that is at the forefront of the global move to open source. As the company that publishes Ubuntu, one of the most important open source projects and the platform for AI, IoT and the cloud, we are changing the world on a daily basis.

We recruit on a global basis and set a very high standard for people joining the company. We expect excellence - in order to succeed, we need to be the best at what we do.

Canonical has been a remote-first company since its inception in 2004. Work at Canonical is a step into the future, and will challenge you to think differently, work smarter, learn new skills, and raise your game.

Canonical provides a unique window into the world of 21st-century digital business.

Canonical is an equal opportunity employer

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

30+ days ago
Related jobs
Promoted
Canonical - Jobs
Portland, Oregon

This role is for a software engineer to join our HPC team to deliver an outstanding HPC experience - from bare metal to public cloud - as part of the broader Ubuntu platform. We are looking for a range of skills and experience, and will work on everything from the kernel to Debian packaging, but the...

Promoted
PMI (Project Management Institute)
Portland, Oregon

Leading the Digital Behavior and Voice of Customer Analysts team, setting goals and objectives, and providing guidance and mentorship to ensure the team meets project timelines and delivers high-quality work. Minimum 5+ years of managerial experience. Ability to oversee and execute multiple projects...

Promoted
VirtualVocations
Portland, Oregon

A company is looking for a Junior Protractor QA Automation Engineer. Key Responsibilities:Develop automated test cases and detailed test plans for product functionality verificationWork closely with the product team to review and understand product requirementsCreate API level automated test scripts...

Promoted
NANOVERSE TECHNOLOGIES LTD
Beaverton, Oregon

This position will manage the day-to-day systems administration of our server, network, and M365 infrastructure and various related computer systems. Systems Administrator or similar role. This is a key role in executing world-class IT systems and processes for a fast-growing technology company. You...

Promoted
Paradigm Information Services, Inc.
Portland, Oregon

Paradigm is currently in search of a Senior IT Systems Administrator to work onsite for our computer hardware client in Wilsonville, OR. As a Senior IT Systems Administrator, you will:. This role will ensure smooth running of networking and server systems, while maintaining a high level of security....

Promoted
Tentamus North America
Lake Oswego, Oregon

The Software Developer is responsible for designing, coding, testing, and maintaining software applications to meet user needs and business objectives. Tentamus North America, is seeking a strong Software Developer to assist with the development of our internal laboratory IMS (LIMS). Design and deve...

Promoted
Day Wireless Systems
Portland, Oregon

Day Wireless Systems is the largest full-service wireless integrator in the West. Day Wireless Systems is the largest full-service wireless integrator in the West. ...

Promoted
VYNYL
Portland, Oregon

As a Software Developer at Vynyl, you'll be working with a group of project managers, producers, designers, and other engineers to build great software and sustainable infrastructure on behalf of our clients. Vynyl delivers high-fidelity software and design to leading companies in finance, healt...

Promoted
Quest Defense
Portland, Oregon
Remote

Designer for mechanical systems: assemblies, conveyances, layouts and routings for hardware. Creating model-based definition, which includes 3D annotations, for detail, assembly, and installation of mechanical systems, primarily conveyances and placement. Engineering mechanisms to facilitate smooth ...

Promoted
Phaxis
Portland, Oregon
Remote

As a Senior DevOps Engineer, you will be responsible for automating and optimizing development and operations processes. Guide and mentor a team of DevOps engineers. Enhance Terraform and PowerShell code, and Azure DevOps pipelines. Improve IT DevOps efficiency through automation and documentation. ...