Whenever I was preparing for the LFX Mentorship, I found very little information about what the interview process actually looked like. Most blogs focused on the mentorship itself after getting selected, but very few talked about the selection process.
So, I thought I'd document my experience applying for the Hyperledger Fabric – BiniBFT project. Every project follows a slightly different selection process, so this is specific to my project and may differ for future batches.
The Timeline
The selection process for my project was fairly straightforward.
- Applications opened.
- I submitted my application along with a cover letter.
- A technical interview was scheduled with the mentors.
- The final list of selected mentees was announced a few days later.
Unlike some LFX projects where previous open-source contributions play a major role, this project primarily relied on the technical interview. Since the work involved implementing and evaluating a research proposal within Hyperledger Fabric, the interview focused on whether candidates had the necessary background to work on the project.
Preparing for the Interview
Initially, I wasn't entirely sure what to prepare.
The project description mentioned implementing BiniBFT, a Byzantine Fault Tolerant consensus protocol for Hyperledger Fabric. After reading through the project description a few times, it became clear that this wasn't really a blockchain interview, but a distributed systems interview.
Most of my preparation went into understanding:
- Hyperledger Fabric architecture
- Raft consensus
- Byzantine Fault Tolerant (BFT) algorithms
- Go fundamentals
Looking back, these were exactly the areas the interview focused on.
The Interview
The interview lasted around 30–40 minutes and felt more like a technical discussion than a traditional interview.
The mentors weren't trying to ask trick questions. Instead, they wanted to understand whether I had the fundamentals required to contribute to the project.
Hyperledger Fabric
We started by discussing Hyperledger Fabric itself.
Some of the topics included:
- The basic architecture of Hyperledger Fabric
- The role of peers and orderers
- How consensus fits into the overall system
The questions stayed fairly high level. They weren't looking for implementation details but expected a good understanding of how Fabric works.
Consensus Algorithms
This was where most of the interview was spent.
Since the project revolved around implementing a Byzantine Fault Tolerant consensus algorithm, the discussion naturally focused on distributed systems.
Some of the topics we discussed included:
- How Raft works
- Leader election
- Log replication
- Existing Byzantine Fault Tolerant algorithms
The interview was much more about understanding concepts than memorizing definitions. If you understand why these algorithms exist and the trade-offs they make, you'll be in a much better position than someone who has simply read a few summaries online.
Go
Towards the end, the discussion shifted to Go.
Some of the questions I remember were:
- Buffered vs. unbuffered channels
- Channel synchronization
- How inheritance works in Go
- Composition and embedding
These were all fundamental Go questions rather than language-specific tricks.
Advice for Future Applicants
If you're planning to apply for LFX, here are a few things I think are worth keeping in mind.
Choose your project carefully. Some projects receive a huge number of applications and contributors every year, making them extremely competitive. Don't ignore smaller or less popular projects just because fewer people are talking about them. If the work genuinely interests you, they can be fantastic opportunities.
Understand the project before applying. Read the project description carefully and make sure you know what you're actually signing up for. The technologies mentioned in the title don't always tell the whole story. In my case, although the project was under Hyperledger Fabric, the interview was largely centered around distributed systems and consensus algorithms.
Have strong fundamentals. Whether it's distributed systems, operating systems, networking, or the programming language used by the project, mentors are generally more interested in your understanding of the basics than your ability to memorize advanced topics.
Read beyond the project description. If the project references a research paper, design document, or existing implementation, spend some time going through it. Even if you don't understand every detail, having a rough idea of what the project is trying to achieve goes a long way during the interview.
Don't panic if you don't know every answer. It's completely normal not to know everything. What matters more is being able to reason through a problem and demonstrate a willingness to learn.
Final Thoughts
Overall, I really enjoyed the interview. It felt less like an examination and more like a discussion about distributed systems with people who were genuinely passionate about the subject.
I hope this blog gives future applicants a better idea of what the selection process looked like for the Hyperledger Fabric – BiniBFT project. Since there aren't many interview experiences available online for this mentorship, hopefully this helps someone preparing for a future LFX application.
Good luck, and I hope to see you contributing to open source soon!