Responsibilities
• Development activities include development, proposing architectural decisions, participating in designs, design review, code review, and implementation Identify issues and implement solutions to complex problems in the blockchain protocol
• Analyze and solve difficult problems across the blockchain protocol
• Work closely with operations and infrastructure to build high scale backend services
• Management of documentation of all code and functionalities implemented
• Work closely with DevOps and ecosystem engineers to improve tech stack for long-term engineering initiatives
Requirements
• Interested in building first-class product to solve real-world problems
• Experienced with various technologies, a fast learner and have a "get things done" mentality
• Strong organizational skills, interpersonal skills and having the ability to juggle conflicting requirements from many different stakeholders
• Humble to embrace better ideas from others, eager to make things better, open to challenges and possibilities
• Self-starter who can define and execute tasks with minimal guidance
• Open to learning, collaborative, willing to give and receive feedback 5+ years of engineering experience, preferably strong backend development experience (e.g. Go, Rust, Java, Erlang)
• Hands-on experience in using basic cryptographic primitives (e.g. BouncyCastle in Java): digital signatures, key exchange, symmetric and asymmetric encryption Basic knowledge of distributed systems and understanding of consensus algorithms, such as Raft or PBFT
• Experience with or interest in Go or Rust Hands-on experience with any existing blockchain system internals is welcomed but not required