Description
IO Global is searching for a Software Engineer (Haskell Developer) to join their Node CLI/API team. As a Software Engineer at IOG, you have the exciting challenge of working with cutting-edge research and technology, focusing on the market's needs. Predominantly, the team looks after the Cardano-api, Cardano-node, and Cardano-CLI. This curation involves integrating, testing, and exposing new features provided by the underlying libraries.
Your mission
- Follow agile software development practices
- Work with teams across multiple time zones
- Work independently on software development tasks
- Be proactive and require minimal supervision or mentoring to complete tasks
- Review specifications produced by architects and formal methods specialists
- Contribute to the design of algorithms
- Write clean, straightforward, efficient code that satisfies previously agreed acceptance criteria and specifications
- Commit often and submit small pull requests frequently
- Cover your code with unit, property, and integration tests when applicable
- Review the pull requests of your teammates
- Fix bugs in your own code and in legacy code from others
- Be available for emergency fixing of severity 1 issues on deployed products
- Integrate software components and third-party libraries
- Verify and deploy programs and systems
- Troubleshoot, debug and upgrade existing software
- Write documentation for the code
- Write technical user manuals
- Be knowledgeable about distributed and concurrent computation
- Be knowledgeable about the basics of cryptography.
Requirements
Your expertise
- A degree in Computer Science is desirable but not essential
- A minimum of 2-3 years development experience (professional or otherwise) in the required language (Haskell, Javascript, Scala, Rust)
- Experience working with Git and Git workflow
- Practical experience with Agile software development methods
- Knowledge of functional and object-oriented programming paradigms
- Good understanding of Quickcheck/Hedgehog and property testing
- Good understanding of concurrent programming/concurrency
- Good understanding of call-by-need, memoization, and lazy evaluation
- Experience in similar languages: PureScript, Elm, Idris, Agda, Ocaml, F#
- Experience with / contributions to GHC (Glasgow Haskell Compiler)
- Familiar with frameworks/libraries such as:
- conduit, cryptonite, distributed-process, lens, optparse-applicative, persistent, pipes, servant, stm, template-haskell
- Proficiency with advanced FP techniques such as:
- Advanced functional data structures, Dependent types, Extensible effects, Generic programming, Streaming, Type-level programming.
Benefits
Location
- IOG is a fully distributed organization and therefore this is a remote position.
All Colleagues
- Flexible schedule
- Remote work - ability to work anywhere
- Laptop reimbursement
- New starter package to buy hardware essentials (headphones, monitor, etc)
- Learning & Development opportunities
- Competitive PTO and Sick Leave plan
US Employees
- Medical, Dental, and Vision benefits coverage through Anthem with 100% premium cost covered by IO Global for the employee and dependents
- Health Savings Account
- Life Insurance
UK Employees
- Monthly Health Stipend to use towards any wellness or medical coverage/service
Pension