Compiler Jobs in Web3

37 jobs found

Receive emails of Compiler Jobs in Web3
Job Position Company Posted Location Salary Tags

IO Global

Remote

$90k - $110k

Polygon Labs

United States

$90k - $110k

Category Labs

Remote

$91k - $115k

Monad

New York, NY, United States

$91k - $115k

Serotonin

London, United Kingdom

$126k - $164k

YeagerAI

Remote

$140k - $164k

Parity Technologies

London, United Kingdom

$54k - $75k

Trilitech

London, United Kingdom

$119k - $150k

Trilitech

London, United Kingdom

$119k - $150k

Provable

San Francisco, CA, United States

$161k - $169k

Succinct

Remote

$90k - $150k

Nomic Foundation

New York, NY, United States

$86k - $148k

Nexus.xyz

San Francisco, CA, United States

$85k - $156k

Gate.io

APAC

$54k - $110k

IO Global
$90k - $110k estimated
Remote
Apply

Who are we?

IOHK, is a technology company focused on Blockchain research and development. We are renowned for our scientific approach to blockchain development, emphasizing peer-reviewed research and formal methods to ensure security, scalability, and sustainability. Our projects include decentralized finance (DeFi), governance, and identity management, aiming to advance the capabilities and adoption of blockchain technology globally.

We invest in the unknown, applying our curiosity and desire for positive change to everything we do. By fueling creativity, innovation, and progress within our teams, our products and services are designed for people to be fearless, to be changemakers.

What the role involves:

The primary purpose of this role is to develop high-quality software solutions that meet customer needs. You will be responsible for writing high-quality code for our products. You will work with cutting-edge research and technology. To support you on this challenge, our products have software architects, product managers, project managers, formal methods specialists and QA test engineers, with whom you must communicate professionally, effectively and efficiently.

The Plutus Core team is building the core of Cardano’s smart contract functionality on the bedrock of functional programming languages. This interdisciplinary team carries out original R&D and turns the results into production systems. This team has designed and implemented four languages for Cardano smart contracts (Plinth, Plutus IR, Typed Plutus Core, and Untyped Plutus Core) and improved the compiler and runtime with more built-in functions and optimizations, expanding the expressiveness, capability and security of smart contracts on Cardano. The team has formalized the semantics of Typed and Untyped Plutus Core using Agda, developed novel compilation techniques for data types, and Implemented a compiler for compiling Plinth into Untyped Plutus Core, which uses Plutus IR and Typed Plutus Core as intermediate representations. They also implemented evaluators for Typed and Untyped Plutus Core, in Haskell and Agda. They also contributed to Cardano ledger updates for smart contracts, and published peer-reviewed research. .

Coding and Development:

  • Write and maintain code in Haskell.
  • Use Git for version control, committing often, and submitting small pull requests.
  • Write clean, efficient code that meets acceptance criteria and specifications.

Testing and Debugging:

  • Write and execute unit, property-based, and integration tests to ensure code quality.
  • Identify and fix bugs, including emergency fixes for severity 1 issues.
  • Troubleshoot, debug, and upgrade existing software.

Code Reviews and CI/CD:

  • Conduct and participate in code reviews to maintain code quality.
  • Implement and manage CI pipelines using GitHub Actions, troubleshooting and improving as needed, optionally using Nix.

Software Architecture and Security:

  • Design and architect software components.
  • Design secure software and perform security analysis.
  • Review specifications from architects and formal methods specialists.
  • Contribute to algorithm design.

Documentation and Research:

  • Write clear software documentation and technical user manuals
  • Simplify complex blockchain concepts.
  • Read and comprehend research papers on cryptography and blockchain.

Release Management and Agile Practices:

  • Follow release processes, manage cabal project SRPs, and use GitHub Actions.
  • Split work into tickets with acceptance criteria and maintain ticket status using Jira.
  • Adhere to agile software development practices.

Blockchain and Distributed Systems Knowledge:

  • Understand Cardano, Blockchain, and Distributed systems.
  • Be knowledgeable in distributed and concurrent computation.

Collaboration and Independence:

  • Work independently on software tasks, being proactive and requiring minimal supervision.
  • Collaborate with teams across multiple time zones.
  • Integrate software components and third-party libraries.
  • Verify and deploy programs and systems.

Plutus Core

  • Enhance Plutus Core tooling to create a world-class product that meets diverse user needs within technical constraints of the system.
  • Collaborate with engineers and researchers to design and implement essential features for Cardano smart contract languages, compilers, and runtime systems, along with comprehensive user documentation.
  • Engage in technical discussions with peers and stakeholders to drive informed decision-making.
  • Conduct thorough code and design reviews to ensure high-quality deliverables.
  • Provide expert Plutus guidance to partner teams, ensuring alignment and knowledge sharing across projects.

Who you are:

  • Bachelor’s degree in Computer Science, or equivalent practical experience.
  • 1 year of experience with software development, data structures and algorithms.
  • Experience in programming in Haskell or another functional language
  • Experience in designing and implementing programming languages, compilers and runtime systems
  • Exposure to blockchain and UTXO-based ledgers would be a bonus
  • Strong English communication skills, in both speaking and writing
  • Carrying out software development tasks independently
  • Leading by example to build a culture of craftsmanship and innovation
  • Writing documentation for code and technical user manuals

Are you an IOGer?

Do you find yourself questioning the status quo? Do you tinker with ideas and long to turn those ideas into solutions? Are you able to spark thoughtful debates, bringing out the inquisitiveness in others? Does the promise of continuously growing excite you? Then get ready to reimagine everything you thought wasn’t possible because that’s what it means to be an IOGer - we don’t set limits, we break them.

  • Remote work
  • Laptop reimbursement
  • New starter package to buy hardware essentials (headphones, monitor, etc)
  • Learning & Development opportunities
  • Competitive PTO

At IOG, we value diversity and always treat all employees and job applicants based on merit, qualifications, competence, and talent. We do not discriminate on the basis of race, religion, color, national origin, gender, sexual orientation, age, marital status, veteran status, or disability status.

What is compiler job?

The job of a compiler engineer involves designing, implementing, and maintaining compiler software

This may include adding new features and optimizations, fixing bugs, and collaborating with other team members to integrate the compiler with other software tools and systems

A compiler engineer is a software engineer who specializes in the development of compilers

A compiler is a program that translates source code written in a high-level programming language into machine code that can be executed by a computer

Compiler engineers typically work on a wide range of tasks, including low-level optimization, code generation, and program analysis

They may also be involved in developing compilers for new programming languages or architectures

Strong problem-solving and analytical skills, as well as a deep understanding of computer science and programming principles, are important for success in this role

The responsibilities of a compiler engineer may include:

  1. Designing and implementing new compiler features and optimizations.
  2. Maintaining and improving existing compiler codebase.
  3. Debugging and fixing compiler issues and bugs.
  4. Collaborating with other team members to integrate the compiler with other software tools and systems.
  5. Writing and maintaining documentation for the compiler.
  6. Performing code reviews and providing feedback to other team members.
  7. Conducting research on new compiler technologies and techniques.

What is compiler job?

The job of a compiler engineer involves designing, implementing, and maintaining compiler software

This may include adding new features and optimizations, fixing bugs, and collaborating with other team members to integrate the compiler with other software tools and systems

A compiler engineer is a software engineer who specializes in the development of compilers

A compiler is a program that translates source code written in a high-level programming language into machine code that can be executed by a computer

Compiler engineers typically work on a wide range of tasks, including low-level optimization, code generation, and program analysis

They may also be involved in developing compilers for new programming languages or architectures

Strong problem-solving and analytical skills, as well as a deep understanding of computer science and programming principles, are important for success in this role

The responsibilities of a compiler engineer may include:

  1. Designing and implementing new compiler features and optimizations.
  2. Maintaining and improving existing compiler codebase.
  3. Debugging and fixing compiler issues and bugs.
  4. Collaborating with other team members to integrate the compiler with other software tools and systems.
  5. Writing and maintaining documentation for the compiler.
  6. Performing code reviews and providing feedback to other team members.
  7. Conducting research on new compiler technologies and techniques.