Senior Compiler/Language Engineer [Rust/LLVM]

Web3 /
Engineering /
Full-Time
/ Remote
Fuel Labs is building the fastest modular execution layer in the world. You will be working at the bleeding edge of blockchain scalability R&D. The Fuel Network features a brand new virtual machine, [the FuelVM](https://specs.fuel.network/master/) with multiple testnets already released and live.

To go with this new VM, a new high-level language is needed; one that avoids the many shortcomings of current smart contract languages, and that offers additional functionality and performance. You'll be designing new language features and implementing and maintaining a compiler targeting the FuelVM.

The compiler and toolchain are available here: [https://github.com/FuelLabs/sway](https://github.com/FuelLabs/sway)

Responsibilities

    • Design and specify Sway language features
    • Implement and maintain new Sway language features in the Sway compiler written in Rust.
    • Implement optimization passes using Sway Intermediate Representation (IR) which is inspired by LLVM.
    • Implement and maintain the Sway backend targeting the FuelVM and potentially other backends targeting other blockchain VMs such as the Ethereum Virtual Machine (EVM).
    • Integrate the compiler with additional tooling: package manager, debugger, language server, IDE plugin, etc.

What we look for in you:

    • Experience with compiler/toolchain development in one or more of the following areas:
    • Compiler frontends: parsing, semantic analysis, type checking and type theory, etc.
    • Compiler middle-ends: experience in writing optimization passes in an iIntermediate Representation (IR) framework such as LLVM.
    • Compiler backends: experience in writing compiler backends, codegen, register allocators, stack allocators (for stack VMs such as the EVM), backend optimizations, etc.
    • Fluency in Rust or C++.
    • Good understanding of computer architecture and machine-level representation of a program.
    • Deep understanding of software engineering best-practices