Contribute to the next Tezos blockchain protocol amendment
One of the distinguishing feature of the Tezos blockchain is its self-amendment prop-
erty. Every now and then, the Tezos ecosystem is asked through a voting procedure
to decide how the chain will evolve. What that means in practice is that software up-
dates (called protocols in Tezos) are regularly proposed to the community, voted on,
and finally automatically deployed. A new protocol is deployed every three or four
The intern will participate in the development of a new feature to be integrated into
a forthcoming protocol amendment, from start to finish: from the feature’s initial
design, through to seeing the final software integrated into Tezos, deployed globally
to the live blockchain, and used by members of the Tezos ecosystem.
Specifically, the development process involves:
• choosing a feature to implement;
• designing, specifying;
• implementing the feature, testing, debugging;
• shepherding the integration of the feature in the amendment;
• communicating about the feature.
The specific feature will be decided at the beginning of the internship, based on in-
tern’s interests and with input from the community. Examples of features include:
a new kind of blockchain operation, additions to Tezos’ smart contract language
Michelson, changes in the consensus algorithm, and new economic incentives or
adjustments to existing incentives.
All of these steps include key aspects of industrial software engineering, including:
communication and collaboration (with the community, the testing and verification
teams, and the protocol development teams); collaborative software development
(version control, code review); and highly rigorous quality- and security-assurance
of the code (different levels of testing, verification, development-aiding tools).
The successful applicant should have a good knowledge of the OCaml programing
language and a vigorous interest in security and code quality.
You will work at the Nomadic Labs’ offices in Paris.
Participating in a large scale open-source project you will have to rapidly learn to
use collaborative tools (Git, merge request, issues, gitlab, continuous integration,
documentation) and to communicate about your work. The final results might be
presented at an international conference or workshop.
You will have a designated advisor at Nomadic Labs and will have to work indepen-
dently and to propose thoroughly-considered solutions to the different problems you
will have to solve. You will be encouraged to seek advice from members of the team.
All material produced (essays, documentation, code, etc.) will be released under an
open source license (e.g. MIT or CC).