Release Manager
The Foundation for Interwallet Operability (FIO, http://fioprotocol.io) is looking for a Senior Release Manager to assist packaging and release of core chain code, contract code, and front-end applications. FIO Protocol is fully open source (FIO Protocol ) with documentation and REST APIs (https://developers.fioprotocol.io/ ). FIO Protocol is built on a blockchain platform that uses C++ as its smart contract programming language. Underlying the blockchain is a WebAssembly virtual machine which executes smart contract code. Blockchain functionality is accessed via an API. Integration of FIO features by crypto wallets and exchanges is facilitated by Typescript, Kotlin, and iOS SDKs.
Overview
Reports to : VP of Engineering
Payscale:
Time commitment : Full time to start, with mastery this can go to part time.
Work style: Flexible, work in your way to collaborate, communicate, gather info, and deliver.
Time zone requirements : Work MST exclusively until demonstrating mastery. Then flexible.
Key Responsibilities
Facilitate the prioritization of projects into core code and contract releases
Oversee the management of code repositories and perform version control of Github repositories necessary for release
Oversee merging of changes and hot fixes into released versions
Perform release acceptance testing using the fio.test repo and javascript testing
Gather information from projects ready for release, working with lead engineers to document the necessary rollout procedures for a project
Resolve acceptance test glitches by troubleshooting and submitting code changes for tests
Work with FIO block producers to facilitate the rollout of releases through FIO Testnet and Mainnet using Discord, Telegram and Jira
Organize and lead block producer meetings to coordinate FIO releases
Coordinate, encourage, and hold accountable integrators as they upgrade to the latest version of the FIO core code
Assist in troubleshooting all release issues to facilitate a successful release
Additional Requirements
Work with Product team and FIO Steering Committee to define the content of releases
Work with lead developers to collaboratively define rollout procedures
Define, create and execute acceptance testing for all releases using javascript
Define, create and manage rollout plans for all releases using the FIO core team wiki on Atlassian
Manage GitHub repository versioning for releases
Make changes to javascript tests and manage your own branches on GitHub for testing code repositories to ensure clean run of system test for release acceptance testing
Work with lead developers to merge changes into release code branches
Own and update code repositories used for the creation and management of FIO private “devnet” networks (implemented in GoLang)
Manage the creation, destruction, and runtime management of cloud based clusters used to perform acceptance testing using AWS and golang
Communicate on telegram and discord as needed to ensure the preparation and execution of the release in the FIO community
Research new ways to improve release acceptance testing and verification
Research improvements in the way FIO creates and manages private full scale test networks for FIO
Research ways FIO can reliably stress test code as part of release acceptance
Tools and Technologies
Atlassian/Jira - A kanban board is maintained and stories are created for work tasks, Epics are created for longer duration projects and initiatives
Confluence Wiki - A FIO core team wiki is maintained in atlassian, you will create and manage pages to communicate various ideas throughout the FIO protocol
Telegram – Telegram is used for communication with the FIO community and FIO block producers
Discord – Discord is used by the FIO core team and various integrators for chat and virtual meetings
Golang – Go is used to program the executable called devnet which uses yaml files to configure various settings
Javascript – node.js is used to program the tests used by the fio core team
Github – Git repositories and branches are used to manage code versions