Software Engineering Lead (Haskell) - Consensus

Posted about 1 month ago ⭐ Recent

Worldwide Remote only
Full Time
Developer
Mentioning Cardano Talent when applying helps us attract more companies. Thanks!

About this role

Summary


The Software Engineer Lead role is responsible for the quality of engineering practices within a product team, and the development of those skills within the team. Software Engineer Lead works to identify cross-team improvements for IOE by sharing code, removing complexity or implementing new practices.

As a Lead you are there to coach and develop your team members and lead team achievements by providing continuous and actionable feedback and opportunities to learn and grow within IOG. 

As a member of the Software Engineering team at IOE you are responsible for writing high-quality code for our products. You have the exciting challenge of working with cutting-edge research and technology with a focus on the market's needs. To support you on this challenge, our products have software architects, product managers, project managers, formal methods specialists, and software engineers, with whom you must communicate professionally, effectively and efficiently.


Duties:


  1. Follow agile software development practices
  2. Work with teams across multiple time zones
  3. Work independently on software development tasks
  4. Be proactive and require minimal supervision or mentoring to complete tasks
  5. Review specifications produced by architects and formal methods specialists
  6. Contribute to the design of algorithms
  7. Write clean, straightforward, efficient code that satisfies previously agreed acceptance criteria and specifications
  8. Commit often and submit small pull requests frequently
  9. Cover your code with unit, property and integration tests when applicable
  10. Review the pull requests of your team mates
  11. Fix bugs in your own code and in legacy code from others
  12. Be available for emergency fixing of severity 1 issues on deployed products
  13. Integrate software components and third-party libraries
  14. Verify and deploy programs and systems
  15. Troubleshoot, debug and upgrade existing software
  16. Write documentation for the code
  17. Write technical user manuals
  18. Be knowledgeable of distributed and concurrent computation
  19. Be knowledgeable of the basics of cryptography



Leadership


As Leaders it is our responsibility to motivate, develop and progress our fellow team members. As a Leader there is a need to communicate openly with all members of your team, address any issues head on and not shy away from difficult conversations.



Requirements:


  1. Education / Experience
  2. Degree in Computer Science is desirable but not essential 
  3. 10+ years of software engineering experience in the required language (Haskell) including 2 years of team management
  4. Experience working with Git and Git workflow
  5. Practical experience with Agile software development methods
  6. Knowledge of functional and object-oriented programming paradigms



Skills relevant for Consensus: 


  1. Demonstrated ability to effectively navigate the typical developer workflow, including code review, debugging, and thorough documentation of decisions and processes.
  2. Comfortable working with new or unfamiliar parts of the codebase, showing adaptability and problem-solving skills.
  3. Strong background in Haskell, with familiarity in the Haskell ecosystem, including key libraries and concepts such as lenses, Template-Haskell, CBOR, GHC Generics, STM, Effects systems, mtl, pipes, SOP, etc.
  4. Practical experience or solid understanding of these libraries and concepts, demonstrating the ability to apply them effectively in real-world scenarios.
  5. Prior experience with blockchain technology is advantageous but not required.
  6. A deep understanding of distributed systems, ensuring a strong foundation for contributing to relevant projects.



Benefits:


  1. Remote work
  2. Laptop reimbursement
  3. New starter package to buy hardware essentials (headphones, monitor, etc)
  4. Learning & Development opportunities
  5. Competitive PTO 


Mentioning Cardano Talent when applying helps us attract more companies. Thanks!
Input Output - IOHK

Building a decentralized future

Share this job