Core Developer
Remote
Job Description
We are looking for passionate developers who are interested in distributed ledger technologies and distributed systems, with an in depth understanding of smart-contracts, cryptographic, crypto-economics and directed-acyclic-graphs.
Responsibilities
  • Researching and implementing methods to improve upon security and efficiency to the ledger.
  • Keep up to date on research on distributed ledger technology and distributed systems and assess the relevance to the network.
  • Aid in the development of the smart contract functionality and create/test robust decentralized applications.
  • Creating documentation required for software libraries.
  • Willingness to travel as necessary.
  • Develop software and research for a cutting edge technology and Open Source project.
  • Willingness to travel as necessary.
  • Design and develop reusable and reliable code using at least one of the following: Python / GO / C++ / Rust.
  • Partake in all aspects of the project’s lifecycle.
  • Research and solve complex engineering challenges.
Requirements
  • Bachelor’s Degree (Computer Science) from a top tier internationally recognized institution.
  • Comfortable programming with Golang.
  • Prior experience working with building and designing networking protocols on a minimum of two of the specified distributed systems topologies (peer to peer, client-server, mesh network).
  • Prior experience working with systems containing Byzantine/potentially malicious clients (games, financial applications, etc ).
  • Intermediate level understanding of probabilistic/discrete data structures to engineer and work with embedded databases (RocksDB, LevelDB, etc ).
  • Intermediate level understanding of cryptography/discrete mathematics (pre-image resistance, hash collisions, Diffie-Hellman key exchange, RSA, cyclic finite groups, discrete logarithm dilemma, etc ).
  • Code portfolio and interview required.
  • Experienced with algorithms, and data structures time/space complexity analysis.
  • Code portfolio and interview required.
  • Adequate level understanding of cryptography/discrete mathematics (pre-image resistance, hash collisions, Diffie-Hellman key exchange, RSA, cyclic finite groups, discrete logarithm dilemma, etc.).
  • Intermediate level understanding of probabilistic/discrete data structures to engineer and work with embedded databases (RocksDB, LevelDB, etc.).
  • Prior experience working with building and designing networking protocols on a minimum of two of the specified distributed systems topologies (peer to peer, client-server, mesh network).
© 2018 Perlin. All rights reserved.
Documentation