Web3 Protocol Engineer - Python

PowerLoom

🌏 Anywhere in the world or Bengaluru
Back-end programming
Posted:
Jul 31
Source of Job Post

About PowerLoom

At PowerLoom, we are building a decentralized protocol that will be considered as a gold standard

  • for guaranteeing integrity of data that lives on any decentralized protocol and the state of which undergoes transitions continually.

  • for serving rich data on demand powered by an ecosystem of peers and stakeholders that are incentivized to participate in the protocol.

The protocol generates snapshots of analytics/insights/statistics extracted from any stream of blockchain data backed by cryptographic proofs. We are aggressively pursuing a mainnet release by end of 2023, and for that we are looking for developers with hands-on experience in building and composing decentralized and distributed systems that power data APIs across a spectrum of frontend and backend technologies.

This position allows you to be fully remote and comes with all the benefits and room for creative freedom that one would expect from such a role. We meet once every 8-10 weeks to converge on our direction, touch base and keep the team spirit intact.

 

Before you apply

  • Expertise in a narrow subset of specific networking/web/data analytics/ML frameworks or libraries, for example, Django/Flask/Pandas/NumPy/SciKit does not translate well into the capabilities required for this role and such applications will not be considered.

  • Please do not apply in case you don't have the freedom to join on an immediate basis or have an inconveniently long notice period (>4 weeks) at your present employment

The following links will help you get a complete picture of the work we do and the systems we build. When you apply, do mention in brief in your introduction note on any specific area/component/subsystem of PowerLoom Protocol that you see yourself readily contributing to based on the skill and experience you have gained so far, if you had the opportunity to do so. All applications without a valid introduction note will be rejected.

 

Must haves: skills and responsibilities

An ability to learn and apply new concepts in a rapid iterative approach will be taken into account wherever prior experience might not be available or applicable.

Share links to your open source contributions or projects to expedite the selection process. Original projects, hacks, bounty submissions have the potential to get a pass straight to the technical evaluation round without a screening round.

  • Language proficiency in order of priority (bonus points if you are equally proficient in both or an addition language)

    • Python
    • JS/TS

Web3

  • Fundamentals of programmable blockchains
    • low level network communications,
    • data structures used for blocks/transactions/proofs/storage,
    • RPC interfaces with nodes
    • Secure, modular smart contract development along with knowledge of low level interfacing of the language with the Virtual Machine on which the smart contract runs (For eg, Solidity+EVM)
    • Hands on knowledge of at least two major DeFi protocols - the math behind them, their smart contract design and architecture, composability use cases of combining them to make money legos.
    • Experienced working with IPFS, Filecoin or any other decentralized storage or database protocol. Should be well versed in writing code that interfaces with the RPC API of peers of the relevant protocol. Understanding of content based addressing and other such principles of decentralized storage protocols is a must.

Systems engineering fundamentals

Regardless of web3 specific experience, it is also important to have solid grounding in building systems that scale and self-correct to ultimately provide value to all clients of PowerLoom Protocol.

  • Ability to architect and map out systems

    • interaction between services, subsystems with appropriate sequence diagrams, flow charts, etc
    • iterative, collaborative documentation
    • catastrophic failure scenarios and emergency measures
    • unambiguous monitoring, observability and self-reporting capability of services and systems
  • HTTP request-response cycle profiling, debugging, optimization

  • Computer Science fundamentals

    • Data Structures and Algorithms - trees, stacks, queues, graphs
    • Theory of computation - Finite Automata, state transitions
    • TCP/IP, knowledge of low level interfaces to Layers 4-7 of the networking stack
    • Operating Systems
      • processes
      • file systems
      • POSIX standards
      • separation of concerns and privileges between kernel and user space
  • concurrency and parallelism constructs

    • distributed worker systems
    • functional programming and data engineering paradigms such as map-reduce, filtering to scale up operations like batched processing, insight generation that run in the backend
  • strategic use of data structures native to specific caches and storage technologies

  • Rapid prototyping of API designs, mock API and service consumption, dogfooding

Cherry on top: Frontend engineering

  • knowledge of one or more frameworks like React/Vue/Angular/Svelte/Next
  • building dashboards to provide insights into metrics, datasets, and supporting all around observability of systems

 

What do you get out this

With any engineering role at PowerLoom Protocol, you will be working on bleeding edge stuff at the intersection of diverse techincal as well as non-technical fields like Web3 tools/frameworks/protocols, decentralized/distributed systems, game theory, cryptoeconomics, DeFi(decentralized finance), to name a few. One can be rest assured that pursuing a career with us and joining the core founding team will empower them to reap the oppprtunities coming up in the decentralized software development world in the near to long term future.

 

Remote Work Culture - Benefits and Expectations

  • Flexible work hours and zero micro-management over hours clocked and other trivial issues
  • Being healthy and fit is an integral part of our company culture and our internal communication channels on Slack mirror the same attitude
  • Ability to communicate and coordinate asynchronously makes or breaks remote teams. We expect commitment towards the same from all members of the team. Be adept at long form, asynchronous communication at every step of the planning and development lifecycle -
    • document design decisions
    • maintain architecture diagrams and references for all modules
    • present all information on Slack without the need for second-guessing and extrapolation from other team members
    • Ask questions to your assigned mentor as well as all stakeholders involved in design, development and testing of the feature/codebase/architecture
  • Wherever there is a need for synchronous communication with team members, coordinate well in advance and block each other's calendars to minimize scheduling conflicts

 

General Must-haves

  • Ability to listen unbiasedly and gather requirements as accurately described in calls/meetings, architectural discussions and engineering documents
  • Ability to clearly communicate progress, blockers and perform independent research
  • Ability to document and take ownership of the functional correctness of any assigned work
  • Ability to quickly iterate, learn from mistakes and apply lessons from the same as future strategy

 

Cherry on top

These skills are not a strict requirement to qualify for the role yet can add the extra edge required to engineer a protocol like PowerLoom:

  • Experience of working extensively with Git and project management tools that enable fast development and coordination across multiple teams in the future
  • Experience with NoSQL data stores and caches like Redis/Memcached
  • Knowledge of Unix/Linux fundamentals - shell scripting, CLI tools etc.
  • Familiar with deploying and managing services on cloud platforms like AWS/GCP/Azure

 

If you are passionate about solving complex data storage and fingerprinting puzzles, and have already worked on open source projects and/or production scale code, go ahead and apply. You won't be disappointed.

When applying for this role, please don't forget to mention that you found this job post on FindAsync. We want companies to know about our site and convince them to post here.
Thank you ! 🙏

Apply to this Job