Descrição detalhada dos requisitos necessários para uma vaga de desenvolvedor para o projeto de API de comunicação multicanais:
* API Multicanal
Requisitos Técnicos Obrigatórios:
* Experiência em APIs Multicanais
Conhecimento em APIs de Comunicação
* WhatsApp Business API ou soluções similares
* Instagram Graph API (para mensagens diretas)
* Protocolos de Email (SMTP, IMAP, APIs como SendGrid/Mailgun)
* WebSockets ou polling para Webchat
Message Brokers
* 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 (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 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
* 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
* Metodologias Ágeis: Scrum/Kanban
* Versionamento: Git (GitFlow)
* Documentação: Swagger/OpenAPI, diagramas de arquitetura
* Colaboração: Trabalho com squads multidisciplinares
Responsabilidades do Cargo
* Desenvolver e manter a API de comunicação centralizada
* Garantir a escalabilidade e baixa latência das filas (RabbitMQ)
* Implementar webhooks para integração com Typebot/n8n
* Criar endpoints para processamento de IA (ex: análise de sentimentos)
* 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)