You are viewing a preview of this job. Log in or register to view more details about this job.

Compiler Engineer

Overview

We're building a new class of Scientific Processing Units (SPUs) to push the boundaries of high-performance computing. As a Compiler Engineer, you'll extend our full-stack LLVM-based compiler and create the software magic that makes scientific applications run seamlessly on our hardware.
 

This is not an easy role. It requires passion for understanding how hardware and software work together, the ability to wear multiple hats across the software stack, strong communication skills, a lot of patience, and, most importantly, zero ego.

Responsibilities

  • Develop and extend Vorticity’s compiler backend, mapping LLVM IR to our proprietary ISA.
  • Build and maintain different compiler frontends (C/C++, MLIR, and others) to map custom kernels to our first-generation SPU.
  • Create low-level runtime libraries to program and control SPUs, scaling to multi-host and multi-SPU systems.
  • Participate in iterative optimization loops for our low-level kernel libraries.
  • Lay the groundwork for integration with high-level software frameworks (PyTorch, Triton and others).
  • Identify opportunities to improve compilation flow, hardware utilization, and system efficiency.
  • Collaborate with architecture and performance teams to analyze bottlenecks and co-design innovative software and hardware solutions.
  • Write clear, concise technical documentation for Vorticity’s kernel engineers and customers.
  • Stay up to date with advancements in compilers, programming models, and computer architecture.

Skills & Qualifications

  • Bachelor's degree in Computer Science, Electrical Engineering, or related field.
  • Master's or PhD in Computer Science, Electrical Engineering, or related field.
  • 5+ years of experience in modern C++ (LLVM IR experience strongly preferred). Exceptional candidates with fewer years but strong skills are also welcome.
  • Background in high-performance computing or parallel programming.
  • Deep understanding of computer architecture and compiler frameworks.
  • Proficiency in C, C++, Python and development on Linux. Shell scripting, CUDA C++ are a plus.
  • Excellent written and verbal communication skills.
  • Strong ability to work independently and collaboratively in a team.
  • Willingness to put in the hard work needed to bring our SPU to life.
  • Above all: zero ego.

About Vorticity

As passionate scientists and engineers, we are well aware of the plethora of critical problems in the world that cannot be solved because humanity simply does not have enough computing power. To address this, Vorticity is developing a radically new silicon chip architecture and system to dramatically accelerate scientific computing problems.

Vorticity’s mission is to expand human ingenuity. To do that we are building a team of exceptional people to work together on big problems. Join us!