Haskell Software Engineer (Network team)

  • IOHK
  • Feb 23, 2021
Permanent

Job Description

Description

We are searching for an experienced Haskell Software Engineer to join IOG's Network team working on the Cardano blockchain platform. The team is a mixed group of network engineers and Haskell developers. They collaborate with network researchers on network simulations to validate ideas.

Your mission

We are looking for a Haskell professional with a basic level of understanding of network programming (socket programming, network protocol design). The team works in close collaboration in a friendly atmosphere. If you joined this team you would have the chance to work with experienced network researchers and Haskell developers.

You will be someone who enjoys working closely with researchers and senior developers on features and designs. You will value both quality of work and your working environment, and be friendly and kind.

In your day-to-day duties you will:
  • Follow agile software development practices
  • Work with teams across 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 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 colleagues
  • Fix bugs in your own code and in legacy code from others
  • Be available for emergency fixing of severe 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
  • Expand your knowledge of distributed and concurrent computation
  • Expand your knowledge of the basics of cryptography.


Requirements

Your expertise

  • Very good understanding of Haskell (space complexity, algorithmic complexity)
  • Able to work on a complex system and have an aptitude for simplifying complexities
  • Able to work with (or have an enthusiasm for learning and exploring) Haskell's type level programming
  • At least a basic knowledge of network programming: able to use the Berkeley socket interface, and an understanding of network protocols
  • Good communication skills, both in writing and speaking.
  • To be able to write specifications and blog posts would be considered as a plus.


Benefits

Location

IOG is a fully distributed organization and therefore this is a remote position. Due to team distribution we are ideally searching for someone in an EU timezone for this role.

All Colleagues

  • Flexible schedule
  • Remote work - ability to work anywhere
  • Laptop reimbursement
  • New starter package to buy hardware essentials (headphones, monitor, etc)
  • Udemy for Business
  • 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