Estamos buscando um desenvolvedor backend experiente em
Node.js, Express e APIs em tempo real para criar a primeira versão do painel e backend de um sistema próprio de streaming P2P. Nosso projeto já conta com uma engine Android em desenvolvimento, que inclui um player local, proxy interno 127.0.0.1, cache por blocos e montagem de blocos em tempo real. O objetivo principal desta fase é estruturar o backend e o painel para monitoramento e controle, registrando clientes online, canais ativos, peers conectados, seeds/VPS e métricas do sistema.
Nesta primeira versão, o foco não é desenvolver a funcionalidade P2P completa, mas sim estabelecer uma base sólida para o backend.
Escopo inicial do projeto:
1. Desenvolvimento do backend utilizando
Node.js e Express.
2. Criação de um painel web simples, utilizando html/css/js ou ejs para visualização e controle.
3. Implementação de endpoints REST para as seguintes funcionalidades:
* Registro de entrada de clientes/peers em um canal.
* Recebimento de heartbeats dos peers.
* Listagem de peers online.
* Listagem de streams/canais ativos.
* Listagem de seeds/VPS cadastradas.
* Retorno de dados para o dashboard.
4. Manutenção do estado do sistema em memória para esta primeira versão.
5. Preparação da estrutura de código para futura integração com Redis e/ou PostgreSQL.
6. Criação de um dashboard simples que exiba:
* Canais ativos.
* Clientes online.
* Peers conectados.
* Seeds online.
* Blocos/cache reportados pelos clientes.
* Dados de download/upload reportados.
* Logs recentes.
7. Estruturação do código de forma organizada para permitir futuras adições, como:
* Broker de peers.
* Seleção de peers por canal.
* Fallback por seed.
* Endpoints de troca de blocos.
Tecnologias desejadas:
*
Node.js
*
Express.js
* Javascript
* html/css (simples)
*
socket.IO (opcional para futuras fases)
* Redis (opcional para futuras fases)
* PM2/Linux/VPS (conhecimento em ambiente de deploy)
Requisitos importantes:
* Código simples, limpo e bem organizado.
* Facilidade de integração com o aplicativo Android existente.
* Endpoints da API devidamente documentados.
* Painel funcional, mesmo que com um design visualmente simples.
O cliente possui clareza sobre o fluxo técnico e a arquitetura atual do sistema e está disponível para fornecer todas as informações necessárias. Buscamos um profissional capaz de transformar essa visão em um backend e painel robustos e escaláveis.
Prazo de Entrega: Não estabelecido