Desafio técnico: Centralização de cobrança

Lu Barbosa
Lu Barbosa
Last updated 

Contexto

Estamos em processo de centralizar nossa operação de cobrança, migrando diferentes produtos e fluxos para um único gateway: Pagar.me. Hoje, também utilizamos o ASAAS, o que gera complexidade para os clientes e para o time financeiro.

Seu desafio

Como Engenheiro de Software, você foi convidado a propor uma solução técnica que nos permita:
  1.  Unificar os fluxos de cobrança em uma plataforma própria
  2.  Usar exclusivamente a Pagar.me como gateway
  3.  Permitir que produtos distintos (PMS, Motor de Reservas, Channel) compartilhem a mesma base de pagamento
  4.  Manter compatibilidade com modelos de cobrança distintos (recorrente e avulso)

O que esperamos da sua entrega

Você pode escolher como deseja entregar: código, arquitetura comentada, diagrama ou documentação técnica.

No mínimo:
  1.  Desenhe e explique como estruturaria a API (REST ou GraphQL)
  2.  Modele os principais domínios (pagamento, cliente, produto, status, tipo de cobrança etc.)
  3.  Simule a lógica de integração com o Pagar.me (não precisa integrar de fato)
  4.  Explique como migraria clientes ASAAS → Pagar.me sem perda de controle
  5.  Sugira caminhos para escalar a solução e facilitar integração futura com o PMS real

Bônus (opcional, mas bem-vindo)
  1.  Como lidaria com múltiplos produtos numa mesma fatura
  2.  Como versionaria e estruturaria rotas da API pensando em futuro acoplamento com outros gateways
  3.  Como deixaria isso pronto para ser um produto independente

O que vamos avaliar

  1.  Clareza e organização do raciocínio
  2. Capacidade de modelagem de domínios.
  3.  Capacidade de tomar boas decisões técnicas
  4.  Visão de produto e pragmatismo
  5.  Código limpo (se decidir codar) ou comunicação bem estruturada

Entrega

  1.  Repositório público ou arquivo compartilhado (README explicando as decisões)
  2.  Linguagem/stack livre, mas temos apreço por Rails, Node.js e boas práticas
  3.  Você decide o quanto quer codar. Queremos ver sua capacidade de estruturar, decidir e explicar

Por que isso importa?

Padronizar e escalar a operação de pagamentos é um passo estratégico para qualquer empresa SaaS.
Essa é uma oportunidade de criar algo com impacto direto: mais eficiência, melhor experiência e base sólida para crescer com tranquilidade.

Boa sorte! Estamos torcendo para ver o seu talento em ação. 💜