Anoma (Heliax)

LLVM Compiler Engineer

🌍 100% RemoteFull-Time

Posted March 14, 2022

Headquarters: Berlin, Germany
URL: https://heliax.dev

Overview

Smart contracts are not secure enough for finance, law, or systems engineering.

Smart contracts are security-critical, performance-sensitive, and bug-prone. Heliax is working on a dependently-typed smart contract language, Juvix, which utilises recent advancements in type theory to allow developers to write code in a high-level functional language, compile it to WASM and/or to arithmetic circuits, and formally verify the safety of their contracts prior to deployment & execution. 

PLT at Heliax focuses on applying the latest research in type theory and programming language design to concrete problems in the distributed ledger space. We are looking for a functional compiler engineer to work on various parts of the Juvix stack, all the way from optimising inlining heuristics in the core compiler passes to using Juvix s granular linearity information in order to write an efficient LLVM compilation backend. 

This role offers the chance to work closely with a small team on compelling cross-disciplinary problems in computer science, PLT, cryptography, and economics, and enjoy a high degree of independence in working conditions and prioritisation.


Responsibilities

  • Take responsibility for identifying and implementing features in the LLVM compiler
  • Produce formal specifications and implementation plans for new language features in collaboration with team members (and optionally submit to academic venues)
  • Evaluate correctness, suitability, and ease-of-implementation of published PLT and compiler engineering research for the Juvix architecture & project aims
  • Implement both in-house and published research in Haskell in the Juvix codebase in collaboration with team members
  • Conduct code reviews and help maintain a high standard of correctness and quality
  • Conduct benchmarks of Juvix output code and adjust both the compiler architecture and details of specific passes to optimise its performance while retaining correctness
  • Comprehensively document both design and implementation choices in the codebase, and assist in writing user-facing documentation for the Juvix language

Main Project


Qualifications

  • Prior experience in LLVM development
  • Prior experience in compiler development and design
  • Prior experience in a typed, functional programming such as Haskell, Idris, Agda, or Coq
  • Self-motivated & self-organised
  • Interested in open-source technology and research applied to DLT

Bonus Qualifications

  • Prior academic work in type theory, PLT, or compiler design
  • Prior academic work in cryptography, economics, or game theory
  • Familiarity with Rust

Misc

  • Remote or local (Z rich/Zug, Berlin). 
  • When remote, preferred if mostly located within (+/- 7 hours) Central European time zones. 
  • Ideally someone who enjoys nature and hiking    .

Help us maintain the quality of jobs posted on RemoteAfrica.

Is this job not remote? Read More

Let us know!
;