HPC Software Engineer

Canonical
Seattle, WA Full Time
POSTED ON 6/26/2024 CLOSED ON 7/30/2024

What are the responsibilities and job description for the HPC Software Engineer position at Canonical?

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.

Software Design Engineer
TALENT Software Services -
Redmond, WA
Software Development Engineer
TALENT Software Services -
Redmond, WA
Senior Software Engineer
Lynx Software Technologies -
Seattle, WA

For Employer
Looking for Real-time Job Posting Salary Data?
Keep a pulse on the job market with advanced job matching technology.
If your compensation planning software is too rigid to deploy winning incentive strategies, it’s time to find an adaptable solution. Compensation Planning
Enhance your organization's compensation strategy with salary data sets that HR and team managers can use to pay your staff right. Surveys & Data Sets

What is the career path for a HPC Software Engineer?

Sign up to receive alerts about other jobs on the HPC Software Engineer career path by checking the boxes next to the positions that interest you.
Income Estimation: 
$120,554 - $147,360
Income Estimation: 
$144,263 - $176,213
Income Estimation: 
$120,554 - $147,360
Income Estimation: 
$144,263 - $176,213

Sign up to receive alerts about other jobs with skills like those required for the HPC Software Engineer.

Click the checkbox next to the jobs that you are interested in.

  • Bug/Defect Analysis Skill

    • Income Estimation: $72,470 - $96,481
    • Income Estimation: $73,937 - $105,550
  • Debugging Skill

    • Income Estimation: $72,470 - $96,481
    • Income Estimation: $74,006 - $95,455
This job has expired.
View Core, Job Family, and Industry Job Skills and Competency Data for more than 15,000 Job Titles Skills Library

Job openings at Canonical

Canonical
Hired Organization Address Las Vegas, NV Full Time
As the most widely used Linux distribution, Ubuntu underpins the security of the entire internet. The role of Security E...
Canonical
Hired Organization Address Milwaukee, WI Full Time
Canonical is a leading provider of open source software and operating systems to the global enterprise and technology ma...
Canonical
Hired Organization Address Syracuse, NY Full Time
As the most widely used Linux distribution, Ubuntu underpins the security of the entire internet. The role of Security E...
Canonical
Hired Organization Address Jacksonville, FL Full Time
As the most widely used Linux distribution, Ubuntu underpins the security of the entire internet. The role of Security E...

Not the job you're looking for? Here are some other HPC Software Engineer jobs in the Seattle, WA area that may be a better fit.

Software Engineer in Test

Intelliswift Software, Redmond, WA

Software Engineer: Graphics

TALENT Software Services, Bellevue, WA