Welcome to RemoteYeah 2.0! Find out more about the new version here.

Remote Software Engineer (Haskell) - Ledger - IOE: Cardano

at IO Global

Posted 3 days ago | 0 applied

Description:

  • IOG is a technology company focused on blockchain research and development, known for its scientific approach to blockchain development.
  • The company emphasizes peer-reviewed research and formal methods to ensure security, scalability, and sustainability.
  • The role involves writing high-quality code for products, specifically for the development of the Cardano blockchain.
  • Responsibilities include implementing features like protocol rules and transaction validation, working with teams across multiple time zones, and collaborating on integration issues.
  • The engineer must be proactive, work independently, and require minimal supervision.
  • Tasks include reviewing specifications, committing often with small pull requests, covering code with tests, fixing bugs, integrating software components, and writing clear documentation.
  • Effective communication with others is essential.

Requirements:

  • A degree in Computer Science is desirable but not essential.
  • A minimum of 5 years of development experience in Haskell is required.
  • Strong experience in writing code in the declarative programming paradigm is necessary.
  • Experience with Git and GitHub is required.
  • Experience with nix is preferred but not mandatory.
  • Proficiency with advanced functional programming techniques such as type families, higher-kinded data, and dependent types is essential.
  • A good understanding of evaluation strategies and related concepts is required.
  • Experience with serialization techniques in Haskell using common libraries is necessary.
  • An advanced understanding of pure functional data structures and relevant Haskell libraries is required.
  • Familiarity with common Haskell libraries such as crypton, random, and lens is necessary.
  • Skills in writing QuickCheck/Hedgehog generators and property tests are required.
  • Familiarity with common testing frameworks like HSpec or Tasty is necessary.
  • Capability to analyze performance using common tooling is required.
  • Experience with low-level programming and foreign function interfaces is a plus but not required.
  • Ability to write idiomatic Haskell code and tests that provide sufficient code coverage is essential.
  • Documentation of code and APIs must be concise and unambiguous.
  • Tasks should be broken down into manageable subtasks with timely reporting to managers.
  • Pragmatic adherence to software engineering principles is required.
  • The position allows for remote work.

Benefits:

  • The position offers remote work flexibility.
  • There is a laptop reimbursement program.
  • A new starter package is provided to buy hardware essentials such as headphones and monitors.
  • Learning and development opportunities are available.
  • Competitive paid time off (PTO) is offered.