Minha equipe e eu fomos responsáveis pela construção de APIs de backend para dar suporte a um aplicativo de carteira digital, seguindo exclusivamente as histórias de usuário definidas para o produto. O trabalho foi realizado ao longo de 4 sprints para a entrega do MVP, observando os requisitos e diretrizes estabelecidos pela equipe de produto.
Minhas responsabilidades
Fui um dos principais desenvolvedores responsáveis pela implementação do serviço de IAM, definindo e implementando regras de autenticação e autorização com o Spring Security; também fui o responsável pela configuração do servidor Keycloak, incluindo seus realms e claims.
Projetei o sistema de notificação por e-mail e sua integração com os demais microsserviços.
Prestei suporte aos meus colegas de equipe em suas tarefas, com ênfase em DevOps e na configuração e implementação de clusters Kubernetes.
Participei ativamente de sessões de pair programming, nas quais realizávamos a depuração do código para corrigir falhas que surgiam durante o desenvolvimento da aplicação.
Estrutura do projeto
Nossa equipe optou por seguir e implementar as APIs de backend necessárias em um contexto de arquitetura de microsserviços; desenvolvemos 3 serviços distintos que se comunicavam entre si:
- Serviço de IAM: Com o Keycloak como provedor de identidade, era responsável pela criação e autenticação de usuários.
- Serviço de conta: Este serviço era responsável pela criação da carteira dos utilizadores e pela gestão das suas transações - internamente ou entre carteiras.
- Serviço de e-mail: Este serviço foi criado para enviar notificações aos usuários por meio de mensagens de e-mail, como confirmações de e-mail, recuperação de senha, comprovantes de transações, entre outros.
Estes três serviços estavam sendo executados dentro de um cluster Kubernetes, utilizando infraestrutura da AWS.

