
Contexto do Cliente:
Por cláusulas contratuais, o nome do cliente não pode ser divulgado, mas trata-se de um dos maiores bancos brasileiros, focado em oferecer soluções financeiras para clientes de médio e grande porte. O projeto "Benefícios" foi criado para estreitar o relacionamento com esses clientes, por meio da oferta de brindes e mimos, como forma de valorizar a parceria e fortalecer os laços comerciais.
Desafio:
O objetivo principal do projeto era permitir o envio de brindes para os clientes elegíveis, por meio de um sistema eficiente e robusto. Era necessário garantir que as regras de elegibilidade fossem aplicadas corretamente, verificando o histórico do cliente e o poder de autorização dos funcionários que realizariam o envio. Além disso, era preciso integrar o sistema com parceiros externos, que seriam responsáveis por fornecer os brindes.
O desafio envolvia lidar com um grande volume de dados de clientes e transações, ao mesmo tempo em que mantinha a segurança e a conformidade com as políticas da instituição, especialmente no que diz respeito à validação de dados e integração com sistemas legados e parceiros.
Solução Proposta:
A solução desenvolvida foi um Web App baseado em arquitetura de microsserviços, que possibilitou a modularidade e escalabilidade do sistema. O framework Quarkus foi utilizado para o backend, garantindo alta performance e menor tempo de resposta, fundamental para o grande volume de consultas e validações exigidas pelo sistema.
A aplicação consumia diversas APIs internas e de parceiros, responsáveis pela validação de dados dos usuários que iriam realizar o envio dos brindes, assegurando que apenas funcionários com autorização tivessem esse poder. Além disso, havia uma validação extra para verificar se o cliente atendia aos critérios necessários para receber o brinde.
Principais Funcionalidades Implementadas:
- Gestão de Clientes e Brindes: Sistema de gerenciamento de clientes com visualização de elegibilidade para receber brindes, possibilitando o envio controlado de mimos de acordo com critérios pré-estabelecidos.
- Validação Multinível: Consumo de APIs para validar o poder de envio de brindes dos funcionários e se o cliente estava apto a receber o benefício.
- Integração com Sistema de Parceiros: A aplicação foi integrada a uma empresa parceira especializada em benefícios, para gerir o processo de envio e fornecimento dos brindes.
- Front-end em Angular: O frontend foi desenvolvido em Angular, utilizando uma biblioteca de componentes personalizada para o cliente, em conjunto com a biblioteca PrimeNG para criar uma interface intuitiva e funcional.
- Banco de Dados Oracle e DB2: A aplicação foi conectada a bases de dados Oracle e DB2 para armazenar e gerenciar as informações dos clientes e suas respectivas transações.
- Spring Batch: Implementação de Spring Batch para atender a necessidades específicas do sistema, como o processamento em massa de dados e relatórios periódicos.
Ferramentas e Tecnologias Utilizadas:
- Backend com Quarkus: Arquitetura de microsserviços em Quarkus para garantir alta performance e escalabilidade.
- Angular e PrimeNG: Para desenvolvimento do front-end e construção de uma interface de usuário moderna e responsiva.
- APIs Internas e Externas: Consumo de APIs para validação de dados e integração com serviços de terceiros.
- Bancos de Dados Oracle e DB2: Utilizados para gerenciar o grande volume de dados sobre clientes e brindes.
- Spring Batch: Para processamento de dados em massa, utilizado em tarefas como geração de relatórios e manutenção de dados.
- Arquitetura de Microsserviços: Permitindo maior flexibilidade e escalabilidade para os diversos módulos do sistema.
Resultados:
- O Web App permitiu que o banco gerenciasse de forma eficiente a distribuição de brindes, aumentando a satisfação dos clientes de médio e grande porte.
- A integração com múltiplas APIs e sistemas de terceiros resultou em um fluxo de trabalho automatizado, reduzindo erros manuais e acelerando o processo de envio.
- A utilização de arquitetura de microsserviços com Quarkus possibilitou um desempenho superior, especialmente em processos críticos, como a validação de dados e autorização de envio.
- O uso de Spring Batch para processamento em massa melhorou a capacidade de lidar com grandes volumes de dados e operações complexas, sem comprometer a performance do sistema.