Node.js Developer - Distributed Price Aggregation Network -- 2

Job ID: 36230712

Budget: $5,000 – $10,000 AUD

We are seeking a highly skilled and experienced Node.js developer to help build an open-source, off-chain distributed price aggregation network that incorporates both API and WebSocket stream aggregation. This project aims to create a decentralized, secure, and scalable network that aggregates pricing data from a pre-approved set of APIs and WebSocket streams and reports the median price of each asset at regular one-second intervals.

As a Node.js developer on this project, you will be responsible for the following:

1. Designing and implementing a Node.js server that can be containerized using Docker for ease of deployment and maintenance.

2. Building a distributed mesh network with peer discovery mechanisms that ensure the random assignment of a lead server, rather than relying on a central server.

3. Developing nodes that are efficient, reliable, and secure in sharing pricing data from a whitelisted set of pricing APIs and WebSocket streams using a custom communication protocol.

4. Implementing zero-knowledge (ZK) proof mechanisms to ensure the authenticity and integrity of pricing data and source, mitigating the risk of bad actors injecting false pricing data into the network.

5. Each node operator uses their own API key and account from any API provider listed on the whitelist. The nodes then broadcast price of each asset along with socket stream to all nodes where median price is determined

6. Building a P2P data sharing mechanism that allows each node to distribute the price of all assets needed by other nodes, enabling the distributed network to calculate and report a single median price for each asset at regular one-second intervals along with socket stream.

7. Developing HTTP endpoints and an API gateway that allow external clients to access the aggregated pricing data and perform operations such as requesting asset pricing data, querying historical pricing data, and subscribing to price change notifications.

8. Implementing some type of p2p mechanism for websocket will allow for real-time stream data aggregation from a pre-approved set of sources.

9. Implementing comprehensive logging, monitoring, and alerting mechanisms that ensure the system's stability, scalability, and performance.

10. Providing comprehensive documentation that details the architecture, design, implementation, deployment, and maintenance of the distributed pricing network.

11. Professional clean commented code for open sourcing and future additional development

For your proposal/quote to be considered please provide a basic design proposal of system.

This project demands a high degree of technical expertise and rigor, and we are looking for candidates with a proven track record of delivering robust, scalable, and secure distributed systems. If you are passionate about building innovative and impactful solutions, have a deep understanding of Node.js, and thrive in a dynamic, fast-paced environment, we encourage you to apply.