Description
IO Global, creators of the Cardano blockchain platform, is searching for a Software Engineering Lead (Rust) to work on several exciting projects. These include the Catalyst innovation fund and the Ethereum Virtual Machine for Cardano.
Catalyst is the largest decentralized innovation fund in the world, with thousands of participants proposing, reviewing, voting on, and implementing innovative ideas for Cardano. The fund uses cutting-edge techniques such as collective intelligence, game theory, sense-making, collaboration and decision-making. The aim is to launch projects while measuring outcomes and rapidly iterating to achieve the best processes possible to translate the wisdom of crowds into tangible value by bringing products and services to life.
Voting in Catalyst is implemented on a proof-of-stake Jörmungandr blockchain. We are aiming to implement a fully privacy-preserving voting protocol and decentralize the process so that the Cardano community, or any other future users of this voting technology, can operate with trust and transparency in independent decision-making.
The primary objective of the EVM as a service project is to provide an environment for execution of Ethereum-style contracts in the Cardano ecosystem. The aim is to provide the capability to execute smart contracts developed for the Ethereum ecosystem on a proof-of-stake sidechain with easy transfer of assets from and to the Cardano blockchain. Ouroboros and other technologies developed by IOG will guarantee Ethereum contracts run faster and cheaper than on the Ethereum network. EVM capability will be implemented in a sidechain to Cardano on a Jörmungandr code base operating a proof-of-stake protocol (Ouroboros BFT).
Our blockchain engineers, app developers, theorists and community managers are working together in a start-up-like environment to add collaboration tools to human processes and create a friendly and engaging experience.
Your mission
We are searching for someone with the leadership skills necessary to build consensus on technical directions and scope of work. You will be experienced in Rust programming ito understand the work and capabilities of the team members.
Your will be expected to:
- Lead and coordinate the development of a complex software project with many application streams
- Plan development tasks in consultation with the product owner and tech architect
- 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 team mates
- 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 software
- Write documentation for the code
- Write technical user manuals
- Develop your knowledge of distributed and concurrent computation
- Develop your knowledge of the basics of cryptography.
Requirements
Your expertise
- We appreciate familiarity with agile development methodologies, and an ability to adapt them to the needs of the team and the projects
- Experience of leading and managing a team of engineers
- A degree in computer science is desirable but not essential
- A minimum of five years’ development experience (professional or otherwise) in Rust
- Experience working with Git and Git workflow
- Practical experience with agile software development methods
- Knowledge of functional and object-oriented programming paradigms
- Solid system programming experience: you’ll have strong experience in system development (ideally in Rust, but relevant experience in C/C++ will be considered)
- Distributed system and network development
- Software development methods such as agile programming and test-driven development
- HTTP API understanding as well as accessibility and security compliance
- Experience in developing cryptography protocols would be a bonus, as would blockchain experience.
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 US or European time zones.
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
Deadline for applications: 12.11.2021.