Now in its fourth year, the Hyperledger Summer Mentorship program has become a valuable on-ramp for college and graduate students looking to gain real world experience and skills in open source development, work closely with technical experts to grow their professional network and enhance their resumes with tangible project contributions.
Today, Hyperledger kicked off the 2020 Hyperledger Summer Mentorship Program by announcing the 18 projects planned for this year. Each project is an opportunity for a student to be paired with one or more mentors to take on a specific Hyperledger development or research challenge. These paid mentorship opportunities are open to students anywhere in the world and offer the chance to be active participants in developing leading-edge open source blockchain technologies.
The Hyperledger Summer Mentorship program is a hands-on, results-oriented program that starts with active developers designing and proposing mentorship projects that have real impact on advancing Hyperledger technologies. These projects must be approved by the Hyperledger Technical Steering Committee before becoming official mentorship opportunities.
The developers who propose the projects serve as the mentors and work closely with their mentees on developing a project plan, setting milestones and solving problems. Students can expect regular evaluations and feedback as well as a stipend and the chance to travel (with expenses covered) to a technical event where they will present their work to the community.
David Huseby, a member of the Hyperledger Community Architecture team, is a regular mentor in the program. He is enthused by the high impact work done each summer and the role mentorship plays in individual careers and the overall growth of open source development. “The Hyperledger mentorship program is a fast paced and challenging opportunity to work at the cutting edge of blockchain technology as well as gain experience as a contributor to our global open source community,” says Huseby.
Students who want to know more about the program should check out these recaps from last summer’s mentees: Part I and Part II. For more about the application process, go here. The deadline to apply is April 24.
Read on for descriptions of some of the projects planned for this year:
Adding Network Fuzzing Capabilities to Hyperledger Umbra
Hyperledger Umbra is a Hyperledger Lab designed to run unmodified versions of our DLT platforms (e.g., Hyperledger Fabric, Hyperledger Iroha) under a simulated environment with software defined networking for the purposes of running experiments (e.g., scaling experiments, consensus algorithm development, etc.) and security audits. Currently Hyperledger Umbra can run unmodified Hyperledger Fabric Docker images and execute a full Fabric network under simulation. Umbra is written in Python and has code for doing virtual network switches and connections. This project is to extend that code to allow for network fuzzing capabilities. The goal is to be able to introduce packet drops, packet delay, packet reordering, as well as unsolicited packets with random/known-bad data. The purpose it be able to test Hyperledger Fabric’s resilience to general network “weather” and intentional attacks coming from the network.
The expected outcomes of this project include:
- Hyperledger Umbra gains the capability to manipulate packet transit and the injection of packets either as part of the configuration setup or as an external API that 3rd party tools can call into. If an API is to be created, an SDK and demonstration application is to be created that shows how to use the API through the SDK.
- A presentation on the use of this new capability to run network fuzzing operations against Fabric.
Create K8 / Openshift Operators for Besu
Hyperledger Besu is an Ethereum client written in Java. Operators are a method of packaging, deploying, and managing a Kubernetes or an OpenShift application. This project aims for the mentee to design, build and test operators for Project Besu. The code to this will then become part of the Besu project and added to the code repository.
The expected outcomes of this project are:
- Provide the ability to deploy, manage and run the Hyperledger Besu containers.
- A presentation on the use of this new capability and what it took to the work done.
Rework Data Model Tests of HL Iroha
One of the major current trends of Iroha development is modularization and decoupling. However, there are some base concepts that will persist, such as the data model. Iroha has a set of commands and queries that are extensively covered by tests. But, as we approached the data model decoupling, we found these tests unnecessarily too tightly bound to existing code, rather than only using proper interfaces.
The expected outcome of this project is a reworked set of data model tests that is decoupled from current implementation and will provide us a great help in having pluggable data model modules.
We have already created a replacement test framework and reworked several commands and queries tests with it. But there is more to do in this direction. So, in this project, the mentee will have complete and functional examples of the work that needs to be done, and guidance from a mentor about the architecture and rationale of the changes.
Check out the full list of mentorship projects and start your application today.
The Hyperledger Summer Mentorship Program is part of the Linux Foundation’s overall commitment to mentoring. The application process is being managed through Community Bridge, a platform created by the Linux Foundations to empower open source developers – and the individuals and organizations who support them – to advance sustainability, security, and diversity in open source technology. Students from diverse communities are encouraged to apply. All are welcome here!