Software Engineer

Aztec Logo

Aztec

๐Ÿ“Remote - Worldwide

Summary

Join Aztec, a leading company in privacy-enhancing technologies for Ethereum, and contribute to the development of Noir, a groundbreaking zero-knowledge language. As a key member of our team, you will play a crucial role in building advanced tools and improving the developer experience for Noir. Your responsibilities will include developing libraries, CLIs, IDE UIs, and CI processes, ensuring optimized and secure software delivery. You will collaborate with the tooling and language team to deliver a stable version of Noir and optimize the development experience for Aztec Contracts. This role requires significant experience in Rust and JavaScript, a solid understanding of WebAssembly, and familiarity with CI environments. We offer a dynamic and collaborative environment where your creativity and passion for digital privacy can make a real-world impact.

Requirements

  • Have 2+ years of experience writing programs in Rust
  • Have 2+ years of experience writing programs in JavaScript and derivatives (eg. TypeScript)
  • Have a solid understanding of WebAssembly and its execution environments
  • Have a solid understanding of WebAssembly compilation targets like wasm32-unknown and wasm32-wasi
  • Have a solid understanding of ECMAScript (JavaScript) execution contexts (NodeJS and Browser)
  • Have practical knowledge of CI environments, specifically GitHub Actions
  • Have familiarity with Noir, its purpose and other languages that have similar goals
  • Be pragmatic and of flexible mindset to satisfy goals and different stages of the product life cycle

Responsibilities

  • Work with the tooling and language team to deliver a stable version of the Noir language and tooling around it
  • Work with the Aztec Contracts team to optimize their development experience
  • Develop more advanced tools for Noir Language and Aztec Network
  • Develop testing frameworks so itโ€™s easy to integrate Noir with other frameworks
  • Develop Language Servers and plugins to optimize Noir Developer experience in an IDE
  • Develop tools to help Debug Noir programs (eg. step debugger)
  • Develop โ€œreverse engineeringโ€ tools to help with program optimisation
  • Develop solutions to help others get their job done in the most optimized way
  • Work on libraries that will be used by other developers
  • Work on Command Line Interface (CLI) applications
  • Develop User Interfaces for Integrated Development Environments (IDEs)
  • Work on Delivery Processes (CI) to deliver software in an optimized and secure way

Preferred Qualifications

  • Have worked on IDE tools such as language server (LSP) and Debuggers
  • Have worked on plugins for an IDE, specifically VSCode
  • Have developed a software library meant to be used by others
  • Have developed CI workflows which efficiently deliver software
  • Have experience with cross-compilation for different platforms and architectures (eg. x86, arm, etc.)
  • Have experience leading and/or participating in the open-source community
  • Have familiarity with current blockchain tooling and developer experience (eg. Foundry, Hardhat)
  • Have knowledge of Circom/Zokrates and ZkEVM
  • Have a love for beautiful abstractions while being pragmatic
  • Have experience with C++

Share this job:

Disclaimer: Please check that the job is real before you apply. Applying might take you to another website that we don't own. Please be aware that any actions taken during the application process are solely your responsibility, and we bear no responsibility for any outcomes.