Senior Software Engineer, Distributed Systems
EigenLabs provides cryptoeconomic security as a service for blockchain projects, such as rollups, bridges and Dapps. In today's blockchain ecosystem, each service is typically secured by its own token. The difficulty of bootstrapping new tokens often leads to too little capital to secure their services sufficiently. With EigenLabs, blockchain services can rely on Ethereum for security instead of their own token values. Stakers in the Ethereum proof-of-stake network can "re-stake" their assets with EigenLabs to secure other services and earn higher returns. Customers pay transaction fees for these strong security guarantees, making it possible for anyone to build innovative blockchain projects without large upfront capital raises.
About the Role
At EigenLabs, we’re building a platform to deliver security to novel distributed applications. As one of our early team members, you’ll have the opportunity to contribute to strategic decisions, help shape software architecture, and make an immediate impact.You will contribute to the design, implementation, and performance of the distributed systems that comprise our products. You’ll use your experience in backend engineering to invent groundbreaking technologies that will help power some of the world’s most successful crypto projects.
This is a full-time position that is fully remote or located with the largely Seattle-based team.
In order to do this work effectively, you will need to:
- Use your distributed systems engineering knowledge to design and implement backend services, prototypes, and tools
- Propose, write, and explain technical designs, approaches, and solutions
- Engage in the team’s design and code reviews, standups, and agile development processes
- Collaborate with a team of senior engineers and researchers to build a key component of the decentralized web
- Constantly learn new concepts, ideas, and frameworks from your peers, and as you work on different projects
You have mastered CS fundamentals and related technical skills
- Bachelors degree in Computer Science or related technical field (e.g., physics or mathematics), or equivalent industry experience.
- 5+ years of software development experience with distributed systems (backend)
- 2+ years of experience with Golang, C++, or Java
- Experience working with continuous integration & deployment (CI/CD) tools and processes
- Experience with container and orchestration technologies such as Docker and Kubernetes.
- You are a full-cycle developer: strong ownership and experience building and operating high-scale, distributed systems across the full software life cycle
- Ideally, you’d have experience some of the key technologies we use across the blockchain, cryptography, and distributed systems domains: Solidity and other smart contract languages, polynomial commitments, signature schemes, hash functions, erasure codes, multi-threaded and parallel computing.
You’ve delivered software products that operate at high levels of scale, quality, and performance
- Experience building complex and high-scale software systems that have been successfully delivered to customers
- Deep problem-solving skills and ability to resolve ambiguous requirements.
- Knowledge of professional software engineering practices & best practices for the full software development life cycle, including coding standards, code reviews, source control management, build processes, automated functional and performance testing
You enjoy contributing in a team environment
- Proficient and thoughtful with asynchronous and synchronous communication, giving and receiving feedback, and working independently and with a team
- Proactively contribute to discussions about technical issues, sprint and roadmap planning, and improving team processes
You want to help the crypto ecosystem improve the everyday lives of billions
- Excited to learn and develop blockchain technology, even if you don’t have crypto development experience yet.
- Recognize the culture and community in crypto are different from other professional software industries, and you want to embrace and improve it.