About Protocol Labs

Protocol Labs drives breakthroughs in computing to push humanity forward. Protocol Labs is a product-development lab, but behind the protocols and tools we build, behind the research and implementations, are passionate people, teammates, and community members. Most teams in the Protocol Labs Network are fully distributed and work remotely around the world. Engineers, researchers, and operators work in the open to improve the internet — humanity's most important technology — as we explore new advances at the intersection of many exciting fields (web3, cryptography, networks, distributed systems) and cultures (startups, research, open-source, distributed work).

The Filecoin Virtual Machine (FVM) project (https://fvm.filecoin.io/) seeks an extraordinary Sr. Software Engineer to help build the core of FVM: a Rust-based Wasm runtime  for untrusted user code inside the Filecoin network. FVM is *THE* most exciting upcoming breakthrough for the Filecoin network, and is still in the accelerating path toward mainnet launch in the next 6 months. You will be a key player in this new upgrade, laying the technical foundation for a new model of trustless and verifiable storage, programmability, and computation. 

We are looking for people who understand the core principles of operating systems, untrusted code execution, resource management, and distributed systems. You will understand, implement and improve a best-in-class blockchain VM built on-top-of WebAssembly, help us design and build open-source code, and ensure that the system is easy to get started with for smart contract developers. You will also help design and implement native FVM interoperability with other chains, as well as developer tooling and SDKs to make the FVM developer journey highly productive and enjoyable.

What is Engineering and Research at Protocol Labs

At Protocol Labs, we translate theory into reality. We take on the most challenging problems that block the adoption of planetary-scale decentralized technologies. Our approach is both pragmatic, rigorous, and must have well-defined, scoped, and measurable milestones. We also interface with many other teams and open source projects, ensuring that we take the best path to get technology into the hands of most people, whether we have invented it or not.

Our philosophy means you will be able to execute in a rich and fertile ground for ideation and prototyping, with the launchpad for shipping those new ideas into reality, testing them in real-world scenarios, and creating maximum impact for the research performed.

Bringing programmabile execution to blockchains is the next evolution of distributed systems. When users can both request and deploy arbitrary programs in a verifiable way, they will be able to use new paradigms with the efficiency and reliability of a globally distributed network. Like Filecoin, we will stand on the shoulders of the giants before us and extend the best-in-class tools to new areas. But we cannot merely be great technically; success will hinge on marrying cutting-edge research with the table stakes of a clean API, well-designed SDK, and intelligent contracts that meet users where they are. Our success will transform the way entire classes of problems are solved. We would love you to be a part of our vision.

As an FVM Software Engineer at Protocol Labs you will…

  • Develop and ship the first smart contract implementation that operates on the Filecoin chain 🚀
  • Define compatibility with and support for existing smart contract execution tool chains and implementations such as EVM and Solidity
  • Collaborate with other Filecoin engineering and ecosystem teams, to ensure integration with  existing systems as well as contribute to other projects to support FVM
  • Create or maintain software libraries and programs depended on by other systems and applications
  • Partner with peer developer advocates to support the developer community when complex issues arise
  • Quantify performance, security, and other properties of existing and proposed systems; suggest improvements based on the data
  • Partner with academia and the broader community in exploring new and out-of-the-box approaches to designing and implementing next-generation decentralized systems
  • Work in a fully remote and asynchronous team

You may be a fit for this role if you have…

  • BSc degree in Computer Science, Electrical & Computer Engineering, or related field, or equivalent practical experience (though a “traditional” education or degree is NOT required)
  • Programming experience and proficiency with Rust is ideal, but programming experience in one or more of the following is required: Go, C, C++, Rust, Java, or similar.
  • Experience building a low-level untrusted code environment - like browser or WASM contexts - where you have to manage & account for resource usage.
  • Ability to analyze, criticize, and improve the design of complex computation systems.
  • Excellent written and verbal communication skills.
  • Pragmatic “get it done” attitude and the ability  to provide and receive constructive feedback.

Bonus Points...

  • You have a record of demonstrating state-of-the-art innovation in distributed systems and/or process virtual machines (e.g. Wasmtime, v8, JVM)  with a proven publication record or project history. (Potentially including but not limited to distributed data structures, novel network architectures and protocols, consensus protocols, peer-to-peer connectivity, distributed execution, distributed file systems, network optimization, graph traversals, and dynamic network analysis.)
  • Experience contributing to research/development communities and/or efforts, including publishing conference papers.
  • You’re comfortable digging through new academic literature like IETF RFCs, W3C specs, etc. for inspiration while problem-solving.
  • You believe that you don’t really understand something until you can explain it to a six-year-old, and your experience mentoring or writing technical explainers or blog posts demonstrates that you enjoy testing your understanding against this metric.
  • You’ve demonstrated technical project management skills and the ability to design and execute on engineering and/or research agendas.
  • You have experience setting up and managing research collaborations or contractors.
  • Proven success of influencing and developing productive working relationships with diverse technical teams and stakeholders
  • Strong technical and problem solving skills
  • Excellent written and verbal communication skills



What’s it like to work at Protocol Labs?
Protocol Labs' mission is to improve humanity’s most important technology, the Internet. We build protocols, systems, and tools to improve how it works. Today, we are focused on how we store, locate, and move information. Our projects include IPFS, Filecoin, libp2p, and more.
As a distributed team, we hire anywhere in the world, and at various levels of experience (entry, senior, staff). We look for people with unique perspectives and diverse backgrounds.
We have a great benefits package, including parental leave, contributions to your retirement, competitive pay, and unlimited time off. For U.S.-based employees, we also provide platinum-level health, dental, and vision coverage for you and your family.

If you’re passionate about the future of computing and a more democratized internet, we want to talk to you.


GDPR for Job Applicants and Candidates

When you apply to a job on this site, the personal data contained in your application will be collected by Protocol Labs, Inc. (“Protocol Labs”), which is located at 427 N Tatnall St #51207, Wilmington, Delaware 19801 and can be contacted by emailing legalrequests[at]protocol.ai.  Protocol Labs’ data protection team can be contacted via legalrequests[at]protocol.ai.  Your personal data will be processed for the purposes of managing Protocol Labs’ recruitment related activities, which include setting up and conducting interviews and tests for applicants, evaluating and assessing the results thereto, and as is otherwise needed in the recruitment and hiring processes. Such processing is legally permissible under Art. 6(1)(f) of Regulation (EU) 2016/679 (General Data Protection Regulation) as necessary for the purposes of the legitimate interests pursued by Protocol Labs, which are the solicitation, evaluation, and selection of applicants for employment.

Your personal data will be shared with Greenhouse Software, Inc., a cloud services provider located in the United States of America and engaged by Protocol Labs to help manage its recruitment and hiring process on Protocol Labs’ behalf. Accordingly, if you are located outside of the United States, your personal data will be transferred to the United States once you submit it through this site. Because the European Union Commission has determined that United States data privacy laws do not ensure an adequate level of protection for personal data collected from EU data subjects, the transfer will be subject to appropriate additional safeguards.

Your personal data will be retained by Protocol Labs as long as Protocol Labs determines it is necessary to evaluate your application for employment or to assist in the hiring process. Under the GDPR, you have the right to request access to your personal data, to request that your personal data be rectified or erased, and to request that processing of your personal data be restricted. You also have the right to data portability. In addition, you may lodge a complaint with an EU supervisory authority.


Apply for this Job

* Required
resume chosen  
(File types: pdf, doc, docx, txt, rtf)
cover_letter chosen  
(File types: pdf, doc, docx, txt, rtf)
When autocomplete results are available use up and down arrows to review
+ Add Another Education

Voluntary Self-Identification

For government reporting purposes, we ask candidates to respond to the below self-identification survey. Completion of the form is entirely voluntary. Whatever your decision, it will not be considered in the hiring process or thereafter. Any information that you do provide will be recorded and maintained in a confidential file.

As set forth in Protocol Labs’s Equal Employment Opportunity policy, we do not discriminate on the basis of any protected group status under any applicable law.

Race & Ethnicity Definitions

If you believe you belong to any of the categories of protected veterans listed below, please indicate by making the appropriate selection. As a government contractor subject to the Vietnam Era Veterans Readjustment Assistance Act (VEVRAA), we request this information in order to measure the effectiveness of the outreach and positive recruitment efforts we undertake pursuant to VEVRAA. Classification of protected categories is as follows:

A "disabled veteran" is one of the following: a veteran of the U.S. military, ground, naval or air service who is entitled to compensation (or who but for the receipt of military retired pay would be entitled to compensation) under laws administered by the Secretary of Veterans Affairs; or a person who was discharged or released from active duty because of a service-connected disability.

A "recently separated veteran" means any veteran during the three-year period beginning on the date of such veteran's discharge or release from active duty in the U.S. military, ground, naval, or air service.

An "active duty wartime or campaign badge veteran" means a veteran who served on active duty in the U.S. military, ground, naval or air service during a war, or in a campaign or expedition for which a campaign badge has been authorized under the laws administered by the Department of Defense.

An "Armed forces service medal veteran" means a veteran who, while serving on active duty in the U.S. military, ground, naval or air service, participated in a United States military operation for which an Armed Forces service medal was awarded pursuant to Executive Order 12985.

Form CC-305

OMB Control Number 1250-0005

Expires 05/31/2023

Voluntary Self-Identification of Disability

Why are you being asked to complete this form?

We are a federal contractor or subcontractor required by law to provide equal employment opportunity to qualified people with disabilities. We are also required to measure our progress toward having at least 7% of our workforce be individuals with disabilities. To do this, we must ask applicants and employees if they have a disability or have ever had a disability. Because a person may become disabled at any time, we ask all of our employees to update their information at least every five years.

Identifying yourself as an individual with a disability is voluntary, and we hope that you will choose to do so. Your answer will be maintained confidentially and not be seen by selecting officials or anyone else involved in making personnel decisions. Completing the form will not negatively impact you in any way, regardless of whether you have self-identified in the past. For more information about this form or the equal employment obligations of federal contractors under Section 503 of the Rehabilitation Act, visit the U.S. Department of Labor’s Office of Federal Contract Compliance Programs (OFCCP) website at www.dol.gov/ofccp.

How do you know if you have a disability?

You are considered to have a disability if you have a physical or mental impairment or medical condition that substantially limits a major life activity, or if you have a history or record of such an impairment or medical condition.

Disabilities include, but are not limited to:

  • Autism
  • Autoimmune disorder, for example, lupus, fibromyalgia, rheumatoid arthritis, or HIV/AIDS
  • Blind or low vision
  • Cancer
  • Cardiovascular or heart disease
  • Celiac disease
  • Cerebral palsy
  • Deaf or hard of hearing
  • Depression or anxiety
  • Diabetes
  • Epilepsy
  • Gastrointestinal disorders, for example, Crohn's Disease, or irritable bowel syndrome
  • Intellectual disability
  • Missing limbs or partially missing limbs
  • Nervous system condition for example, migraine headaches, Parkinson’s disease, or Multiple sclerosis (MS)
  • Psychiatric condition, for example, bipolar disorder, schizophrenia, PTSD, or major depression

PUBLIC BURDEN STATEMENT: According to the Paperwork Reduction Act of 1995 no persons are required to respond to a collection of information unless such collection displays a valid OMB control number. This survey should take about 5 minutes to complete.