IOG is a technology company focused on Blockchain research and development, emphasizing peer-reviewed research and formal methods to ensure security, scalability, and sustainability.
The Software Engineer role involves writing high-quality code for products while working with cutting-edge research and technology.
Responsibilities include following agile software development practices, working independently on software development tasks, and communicating effectively with team members across multiple time zones.
The engineer will use systematic debugging to diagnose issues, lead in fostering a culture of observability, and be a technical leader across related domains.
The role requires reviewing specifications, contributing to algorithm design, writing clean and efficient code, and covering code with tests.
The engineer will also be responsible for fixing bugs, integrating software components, troubleshooting existing software, and writing documentation and technical user manuals.
Knowledge of distributed computation, cryptography, and the implementation of new features for the stablecoin protocol is essential.
The engineer will synchronize with the technical manager, identify opportunities for improvement, and collaborate with operations and UI teams.
The role may involve working on prototypes and estimating and prioritizing work items.
Requirements:
A degree in Computer Science is desirable but not essential.
A minimum of 2-3 years of development experience in Haskell is required.
Experience with Git and Git workflow is necessary.
Practical experience with Agile software development methods is expected.
Knowledge of functional and object-oriented programming paradigms is important.
A good understanding of the Haskell type system, libraries, and GHC runtime & performance is required.
The ability to work in a team and collaborate across different time zones and levels of experience is essential.
Exceptional written communication skills are necessary, including the ability to implement formal specifications.
Candidates must understand project needs, objectives, and timelines for effective planning.
The ability to articulate new issues and suggest changes to management is required.
Writing idiomatic code and tests that provide sufficient coverage is essential.
Documentation of code and APIs must be concise and unambiguous.
Candidates should be able to break down tasks into manageable sub-tasks and report completion as required.
Pragmatic adherence to software engineering principles is expected.
Optional knowledge of blockchain and DeFi applications, specifically Cardano, is a plus.
Experience with finance applications and using nix is also optional.
Benefits:
Remote work options are available.
Laptop reimbursement is provided.
A new starter package is offered to buy hardware essentials such as headphones and monitors.
Learning and development opportunities are available for employees.