JuliaHub is seeking a compiler and runtime engineer to contribute to the core technology in the Julia programming language. Julia is one of the most popular modern programming languages for scientific computing. The Julia language and compiler team supports hundreds of thousands of Julia users both in industry and academia. Our users are solving the world’s toughest problems, from vaccines to jet engines. Join the Julia compiler and runtime team and help accelerate scientific breakthroughs everywhere.
As part of the Julia compiler and runtime team, you will work closely with maintainers of the Julia programming language. Tasks may include implementing new compiler optimizations and static analyses, performance engineering of our compiler and libraries or feature engineering in the language runtime.
JuliaHub's mission is to develop products that bring Julia's superpowers to its customers. JuliaHub's flagship product is JuliaHub, a secure, cloud based, software-as-a-service platform for developing Julia programs, deploying them, and scaling to thousands of nodes. JuliaHub was founded in 2015 by the creators of the Julia programming language for artificial intelligence, machine learning, analytics, data science, modeling and simulation.
Requirements:
Programming in C, C++ and Julia
Some knowledge of compiler concepts such as type systems, code representations (e.g. SSA form), and program transformations
Desired Skills and Experience:
- Knowledge of SSA-based compiler IRs (e.g. LLVM, MLIR or Cranelift)
- Familiarity with functional languages such as ML or Lisp/Scheme
- Array programming and numerical computing / machine learning
- Programming language run-time system development, e.g. garbage collectors and threading systems
- Knowledge of operating system concepts
- Familiarity with Git and open-source development
We anticipate that qualifying applicants will have at least either
1) a bachelor's degree either in computer science with relevant coursework (compilers, programming languages, systems); or
2) a bachelor’s degree in a scientific field with additional experience in compilers and runtimes
However, there are no formal degree requirements for this position and qualifications can be demonstrated with relevant experience.
Most of our compiler team works out of our Boston-area office, so presence in that location is a plus, but not required.
Please upload a copy of your resume, along with a cover letter highlighting your interest in the position and relevant background.