Software Engineer (Internship)
Internship Program at Nomadic Labs
About Nomadic Labs
Nomadic Labs is a leading research and development center in Paris, dedicated to advancing the Tezos protocol within an international, decentralized, and vibrant ecosystem (such as the Tezos Foundation, Trilitech, and others). With a focus on core development, our mission is to enhance security, scalability, and functionality across the Tezos ecosystem.
Internship Overview
The internship program offers an exciting opportunity to join our engineering teams, contributing to the development of the Tezos blockchain. Interns will:
-
Collaborate closely with experienced engineers on innovative projects.
-
Gain hands-on experience in blockchain, distributed systems, and infrastructure automation.
-
Implement prototypes and make meaningful contributions to the Tezos blockchain.
-
Be considered for junior engineering positions upon successful completion of the internship, with a minimum starting salary of €55,000.
-
All internships are in-person with possibility of remote work one day per week.
Expectations and Skills
-
A solid understanding of computer science principles.
-
Ideally, experience or coursework in modern programming languages, particularly in OCaml and Rust – experience in Scala or Haskell are also considered relevant.
-
Should be in the final year of master studies, PhD students are also very welcome.
-
Fluent in Technical English.
-
Strong interest in Web3 and Blockchain.
-
Experience working in an agile environment is a plus.
-
Sense of collaborative work, continuous learning, and effectiveness.
Skills You’ll Develop:
-
Software Engineering (continuous delivery, code reviews, test driven development, team work)
-
Blockchain Protocol Design and Implementation (Layer 1 & 2)
-
Secure Distributed Systems & Networking (Gossipsub, libp2p)
-
Rust/OCaml Programming (Prototyping)
-
Scripting & Automation (Bash, Python, Ansible)
-
Monitoring Tools (Prometheus, Grafana, Datadog)
-
CI/CD Pipelines & Cloud Infrastructure (GitLab, Capacity Planning)
Internship Topics
There are four engineering teams at Nomadic Labs: Core Layer 1, Core Layer 2, Core Tezos X, and Engineering Infrastructure. We describe here the scope of these teams and some possible topics to join these teams as an intern but this is not a closed list: further discussions with candidates can lead to different propositions depending on the profile and the interests of the intern.
Core Layer 1:
The Core Layer 1 team is focusing on the “Layer 1” of Tezos. This layer offers a secure settlement layer for the full stack. It is a full-fledged blockchain equipped with a fast and secure proof-of-stake consensus algorithm, an on-chain governance mechanism, and a smart contract execution platform, all this running on top of a P2P permissionless network.
Proposed internship topics:
-
Proposer Lotteries: Prototype different Proposer lottery mechanisms and compare their performance and properties under various network conditions.
-
Parallelized Operation Validations: Design and implement a system for validating multiple operations simultaneously to enhance throughput and scalability.
Core Layer 2:
The Core Layer 2 team is focusing on the implementation of the Data Availability Layer of Tezos and the Smart Rollups called Etherlink – an EVM compatible L2 chain – and TezLink – a Michelson compatible L2 chain, on-chain execution platforms for decentralized applications.
Proposed internship topics:
-
Gossipsub Protocol: Define a clear model or specification for the Gossipsub protocol and derive property-based tests for validation.
-
EVM Node in Rust: Prototype the Ethereum Virtual Machine (EVM) node in Rust and compare its performance with the existing OCaml implementation.
-
DAL Node in Rust: Prototype the Data Availability Layer (DAL) node in Rust, migrating it from OCaml and comparing performance with the existing version.
Core Tezos X:
The Core Tezos X team is preparing the next iteration of the Tezos blockchain. The current focus is on the implementation of a fast and secure RISC-V proof-generating virtual machine and on an hypervisor for proof-generating virtual machines.
Proposed internship topics:
-
Optimizing RISC-V interpreter (written in Rust). Explore several techniques of optimization for the RISC-V interpreter in a wide range starting from low-level micro-optimizations to fine tuning of runtime code generation.
-
Hypervisor of proof-generating virtual machines. Prototype a concept of hypervisor for the proof-generating virtual machines that are at the heart of the Smart Rollups technology. Demonstrate parallelization and adapt the fraud detection system to handle parallelization.
Engineering Infrastructure:
The Engineering Infrastructure creates the condition for the software engineers to move fast. This includes tooling and online services that are typically expected to implement a continuous delivery practice.
-
Monitoring & Alerting: Create new dashboards or improve existing ones for non-critical systems, refining alerts to ensure accurate thresholds.
-
Infra Playbook: Improve incident response playbooks and enhance onboarding materials for new team members.
-
Automating Non-Critical Tasks: Identify and automate repetitive, low-risk tasks using scripts (bash, Python, or Ansible).
-
CI/CD Pipeline Improvements: Optimize or improve non-critical CI/CD pipelines by refactoring parts or reducing execution times.
-
Capacity Planning: Perform capacity planning analysis to identify trends in resource usage and make scaling recommendations.
How to Apply
If you are motivated by a fast-growing, promising and innovative business sector, you are autonomous, rigorous and responsive, you welcome challenges and seek to further your career in a worldwide project, join our teams now! Send your application to careers@nomadic-labs.com.
For any questions or queries, please send an email to contact@nomadic-labs.com.
(Please note, this email is for queries only. Kindly send your applications to the designated email address)
Join us for this immersive experience in blockchain technology!
Apply now
Send us your application