Descrição detalhada dos requisitos necessários para uma vaga de desenvolvedor para o projeto de API de comunicação multicanais (WhatsApp, Instagram, Webchat, Email) com integração a ferramentas de automação e IA:
* Requisitos Técnicos Obrigatórios:
Experiência com APIs Multicanais:
* Conhecimento em APIs de comunicação como:
* WhatsApp Business API ou soluções como Twilio/MessageBird
* Instagram Graph API (para mensagens diretas)
* Protocolos de email (SMTP, IMAP, APIs como SendGrid/Mailgun)
* WebSockets ou polling para Webchat
Message Brokers (RabbitMQ):
* Experiência em configuração, produção e consumo de filas no RabbitMQ
* Conhecimento em troca de mensagens (exchanges, queues, bindings)
* Serialização de mensagens (JSON, Protocol Buffers)
Backend e Frameworks:
* Domínio em Node.js (Express/NestJS) ou Golang
* Criação de APIs RESTful
* Autenticação (JWT, OAuth2) e segurança (HTTPS, rate limiting)
Integração com Ferramentas de Automação:
* Typebot: API pública ou webhooks para trigger de fluxos
* n8n: Criação de workflows automatizados via HTTP requests
* Ferramentas de IA (ex: OpenAI GPT, LangChain, RAG)
Banco de Dados:
* Modelagem de dados para registro de mensagens (PostgreSQL)
* Otimização de queries para histórico de conversas
DevOps e Cloud:
* Docker e orquestração (Proxmox é um plus)
* Deploy em cloud privada servidores LINUX
* Monitoramento (Prometheus, Grafana)
Diferenciais (Nice to Have):
Experiência com provedores de terceiros como:
* Meta (WhatsApp/Instagram) APIs empresariais
* Zenvia, Gupshup, ou outros gateways de comunicação
* Conhecimento em LLMs (ex: fine-tuning de modelos para respostas automatizadas)
* Frontend básico (React/Vue) para possível dashboard de logs
* Testes automatizados (Jest, Postman/Newman)
Soft Skills e Processos:
1. Metodologias Ágeis: Scrum/Kanban
2. Versionamento: Git (GitFlow)
3. Documentação: Swagger/OpenAPI, diagramas de arquitetura
4. Colaboração: Trabalho com squads multidisciplinares
Responsabilidades do Cargo:
1. Desenvolver e manter a API de comunicação centralizada
2. Garantir a escalabilidade e baixa latência das filas (RabbitMQ)
3. Implementar webhooks para integração com Typebot/n8n
4. Criar endpoints para processamento de IA (ex: análise de sentimentos)
5. Monitorar e resolver problemas nas integrações
Nível de Senioridade:
* Pleno/Sênior (dada a complexidade das integrações e necessidade de tomada de decisões arquiteturais).