Case_GalaxPay

Galax Pay: Migração para nuvem garante mega investimento para a empresa

Sobre a Galax Pay

Galax Pay é uma plataforma automatizada de gerenciamento de cobranças de cartão de crédito, boletos e pix. Como uma fintech brasileira, a Galax Pay é integrada às operadoras de cartão de crédito para facilitar o processo de cobranças recorrentes. A plataforma ainda oferece acesso a relatórios completos de dados de vendas, gateway de pagamentos para faturas únicas, relatórios customizáveis, gerenciamento automatizado e outras ferramentas que facilitam a gestão de faturamento.

A empresa entendeu que um dos maiores desafios enfrentados pelos empresários brasileiros é a dificuldade de previsibilidade financeira, o que impede investimentos e melhorias em seus negócios. Assim, o sistema de pagamento financeiro Galax Pay foi criado com o objetivo de acabar com esse problema, oferecendo às empresas segurança no recebimento de seus pagamentos mensais.

Em 2015, a inadimplência crescia a uma taxa alarmante em decorrência de uma crise econômica que atingiu o país. Foi então que Márcio Vinícius, atual CEO da Galax Pay, entendeu que era fundamental aprimorar os processos de cobrança e recebimento das empresas. A Galaxy Pay surgiu em um momento em que nenhuma companhia oferecia serviço de pagamento automático de cartão de crédito a um custo acessível para os clientes.

Sobre o sistema

O principal objetivo do Galax Pay é simplificar o gerenciamento de pagamentos através da automação e facilitar os processos de recebimento de pagamentos únicos e recorrentes. Atuando como um intermediário entre bancos, empresas e clientes, a plataforma Galax Pay possibilita que pagamentos sejam efetuados e recebidos por intermédio de vários métodos – incluindo débito direto autorizado e Pix, plataforma gratuita de pagamentos eletrônicos instantâneos administrada pelo Banco Central do Brasil.

A Galax Pay facilita a comunicação das companhias com seus clientes finais, além de oferecer controle total sobre todos os pagamentos por meio de relatórios. Atualmente, a Galax Pay processa mais de R$45 milhões mensais e atende mais de 2.700 clientes.

O Desafio da Empresa

O crescimento inicial da Galax Pay foi lento em decorrência de restrições em sua infraestrutura que estava hospedada on-premise. Problemas diários que a infraestrutura apresentava demandavam quase todo o foco da equipe, reduzindo o tempo disponibilizado para desenvolver a solução.

O time da Galaxy Pay tinha 27 pessoas, e pelo menos 10 delas tinham envolvimento direto com o lançamento dos processos, monitoramento de ambiente e criação de ambiente de teste e validação. Além disso, outros departamentos da empresa operavam com uma equipe muito enxuta, o que resultou na dificuldade de crescimento – pois quando se tem uma estrutura on-premise, quanto mais desenvolvedores são contratados, mais a estrutura tem que crescer para acomodá-los.

A ausência de implantações automatizadas (CI/CD pipelines) e de estratégias de implantação fizeram com que novas versões da aplicação se tornassem amplamente indisponíveis. O repositório estava sendo utilizado indevidamente – os conceitos dos branches de desenvolvimento do GitLab estavam sendo aplicados incorretamente. Na ausência de containers era necessária uma configuração na máquina do desenvolvedor (por aplicação), o que gerou problemas relacionados à disponibilidade no ambiente final. Isso acabou por envolver diretamente os ambientes criados em uma relação de ambiente de desenvolvimento versus ambiente de teste, levando a uma grande necessidade de ambientes de testes e uma grande quantidade de fusões até que uma versão pudesse ser produzida.

Um pacote gerado manualmente foi disponibilizado no servidor, sem nenhum tapete de integração (CI) ou de disponibilidade (CD) e sem nenhuma estratégia de implantação definida – como por exemplo, uma estratégia de implantação verde azul. Ao mesmo tempo, foi liberada uma versão distribuída a todos os clientes.

A maior parte dos lançamentos causou interrupção no serviço para o cliente final, o que pode custar muito caro para a reputação de uma fintech – há uma diminuição da percepção de eficiência e confiabilidade da empresa. Além disso, o próprio uso de repositórios no GitLab e a estratégia de ambientes non-prod também precisavam ser revistos para que a empresa pudesse gerenciar o controle de qualidade por meio do uso de ambientes de teste e aumentar a velocidade dos lançamentos por meio da automação.

A fintech também precisava estar em conformidade com as normas de PCI DSS no setor de pagamentos para atestar o seu comprometimento com o Padrão de Segurança de Dados da Indústria de Pagamento com Cartão. Embora ter um ambiente seguro seja o primeiro passo para obedecer aos padrões de segurança da indústria, o que realmente conta é a capacidade de se manter continuamente em cumprimento dessas regras.

Foi nesse contexto que a Galax Pay procurou a DNX para assessorar na migração de sua estrutura on-prem para a nuvem, algo que possibilitaria o crescimento que a empresa almejava. Através dessa transformação, a DNX influenciou diretamente na habilidade da Galax Pay de atrair investidores e escalar o seu crescimento comercial agregado ao aumento do investimento – resultando em um investimento da CelCoin.

O Processo

  • Fase de Avaliação

Através de briefings executivos, a DNX entendeu e catalogou a infraestrutura existente na Galax Pay. Essa etapa exige muita habilidade e é uma parte crítica na jornada de migração. Contudo, ela permitiu que a equipe da DNX não apenas entendesse as dependências e problemas comuns no ambiente, como também estimasse um Custo Total de Propriedade (TCO), aumentando a visão da Galax Pay sobre o seu próprio negócio. Terminada essa fase, a DNX identificou os recursos e aplicações necessárias para realizar a migração.

A DNX também identificou redundâncias e recursos subutilizados, incluindo base de dados que foram replicadas em vários servidores e máquinas compradas para atender demandas de datas específicas – como por exemplo a Black Friday – e que acabavam sem uso pelo restante do ano. A identificação desses custos adicionais ajudou a Galax Pay a tomar decisões que aumentaram as oportunidades de redução de custos e escala.

O principal resultado dessa fase de avaliação foi a criação de um business case de alto nível que desenhou diversas estratégias para que o time atingisse os objetivos do projeto. A análise do negócio possibilitou que a Galax Pay avaliasse todas as opções disponíveis usando suas prioridades e necessidades como parâmetros, o que, em última instância, contribuiu para decisões mais sólidas para o projeto em questão.

Baseada na avaliação dos processos de interação com os clientes, a melhor solução encontrada foi a migração de as aplicações. Os containers disponibilizam uma forma padrão para o armazenamento de configurações, códigos e dependências das aplicações em um único objeto, compartilhando apenas um sistema operacional instalado no servidor. O uso de containers permite que a equipe faça implantações de forma rápida, confiável e consistente, independentemente do ambiente.

Com a evolução do processo de virtualização, os containers são capazes de redimensionar a aplicação rapidamente por precisarem de pouco tempo de inicialização. Esse método simplifica a automatização do processo de implantação – já que a aplicação fica empacotado e pode ser disponibilizado em diferentes ambientes, como o desenvolvimento, homologação e produção.

A DNX concluiu que esse era o melhor método para acompanhar o desenvolvimento da aplicação, já que uma vez feita a conteinerização, há a garantia de que tudo o que a aplicação necessita para operar está intrinsecamente ligada a ela. A estratégia maior era garantir a máxima disponibilidade para o usuário final.

  • Fase de Mobilização

Após a avaliação, iniciou-se o processo de planejamento – o momento em que a DNX começou a desenhar a nova arquitetura e o plano de migração de acordo com as necessidades da Galax Pay. A DNX avaliou as lacunas de tempo de resposta da nuvem e interdependência entre aplicações, descobertas na fase anterior. Além disso, foram avaliadas todas as possíveis estratégias de migração para garantir que a mais adequada fosse selecionada e atualizada no business case. Durante a etapa de Mobilização, a equipe da DNX implantou a Citadel, uma infraestrutura na nuvem arquitetada nos padrões de Well-Architected da AWS, pronta para entrar em conformidade com as normas de órgãos reguladores internacionais como PCI DSS, HIPAA, ISO 27001, CDR. E em seguida trabalhou com o cliente para projetar a plataforma da aplicação.

A solução apresentada à Galax Pay foi a de performar a migração através da modernização da aplicação e da utilização de containers utilizando o Amazon ECS, que é executado utilizando o Fargate. O ECS permite a configuração de métricas como CPU, memória e número de conexões, que auxiliam no escalonamento automático. O Fargate foi escolhido para alcançar a elasticidade e agilidade necessárias para a aplicação Galax Pay, pois permite que dois containers sejam executados ao mesmo tempo sem a necessidade de gerenciar servidores ou clusters de instância EC2.

O Fargate simplifica o processo da Galax Pay ao eliminar a necessidade da escolha de um tipo de servidor e o tempo de dimensionamento e de empacotamento de clusters. Outro motivo pelo qual o Fargate foi a escolha perfeita nesse caso foi o atendimento aos critérios de conformidade de PCI exigidos pelo ambiente. O uso do Fargate significa que a Galax Pay não precisará atualizar continuamente o sistema operacional ou utilizar sistemas de anti-vírus para a manutenção da segurança das máquinas.

Antes de iniciar a terceira e última fase do projeto, a DNX concluiu a configuração da zona de aterrissagem utilizando a fundação segura da Citadel e preparando o terreno para a migração de várias aplicações-piloto.

  • Fase de Migração

Após a comprovação do sucesso dos aplicações-piloto, começou a migração do restante dos dados da Galax Pay para o ambiente seguro criado na AWS. Para que a Galax Pay se beneficiasse totalmente de tudo que a AWS tem a oferecer, durante o processo de migração o time da DNX realizou uma modernização. Ao modernizar dados e aplicações com conceitos nativos da nuvem, a Galax Pay se preparou para um futuro de sucesso – em que a eficiência de suas operações é otimizada.

Ao replicar o banco de dados, a DNX garantiu a sincronização ativa de dados – o que possibilita que os mesmos sejam replicados no ambiente operacional, reduzindo o downtime para cutover. Ou seja, ir além de uma simples estratégia de levantamento e deslocamento permitiu que a Galax Pay evitasse trazer os problemas do passado para o futuro da empresa.

A Galax Pay entrou em contato com a DNX Solutions do Brasil à procura de uma migração de on-prem para a nuvem, mas a entrega final superou as expectativas. O cliente buscava uma migração lift-and-shift para a AWS, mas entregamos uma modernização completa de acordo com os padrões de qualidade da AWS. A Galax Pay estava ciente dessa solução, mas imaginava que seria algo para o futuro. No entanto, implementamos essa solução nesse momento, evitando que a Galax Pay tivesse que se envolver em um novo projeto mais adiante.

Com o resultado alcançado, a Galax Pay:

  • Aumentou a percepção de disponibilidade e performance da aplicação
  • Diminuiu o tempo de resposta para melhorias e correção de bugs (bug fixes) e sua efetiva disponibilização. Isso foi refletido no aumento de sua nota na plataforma de avaliação online Reclame Aqui
  • Maior segurança para o cliente ao atender os padrões PCI DSS

A modernização da aplicação foi entregue como parte do projeto de migração, aumentando a agilidade e segurança e permitindo que a Galax Pay atingisse metas projetadas para anos no futuro.

 

Aumento do Investimento e Crescimento

 

De 2020 a 2022, A Galax Pay cresceu 420% em receita do ano fiscal. Enquanto isso, o número de clientes aumentou aproximadamente em 150%, indo de 1.116 para 2.784 clientes.

Com os desafios operacionais causados por uma estrutura datada resolvidos pela migração efetuada pela DNX, as estratégias de negócio e promoção ganharam destaque. O resultado atraiu o investimento da CelCoin, que atuou como um catalisador financeiro impulsionando os negócios. A fundação segura e dimensionável entregue pela DNX Brasil garantiu que a Galax Pay estivesse preparada para lidar com aumentos de fluxo repentinos.

Estima-se que o aumento de clientes que a Galax Pay alcançou seria atingido em cinco anos, caso eles tivessem mantido sua infraestrutura on-prem.

 

Aumento de Entregas

 

Como uma fintech com uma solução digital sendo alimentada por um canal digital de aplicações, tecnologia é o cerne do negócio. O time da DNX implementou a automação de implantação e compartilhou conhecimento com a Galax Pay em relação ao GitLab e ambientes não produtivos. Isso permite a constante entrega de novas versões da aplicação diariamente.

 

Tranquilidade

 

Galax Pay agora opera a partir de uma estrutura segura de nuvem, a Citadel, que oferece tranquilidade operacional e de conformidade por meio de maior resiliência, confiabilidade e segurança.

 

Maior Desenvolvimento

 

A substituição da atualização manual pela automação otimizou o uso do tempo da equipe. Com as preocupações com a infraestrutura resolvidas, a equipe de desenvolvimento da Galax Pay agora tem tempo disponível para se concentrar nos objetivos principais da empresa e criar novos recursos para a solução.

A automação também permitiu que a Galax Pay implementasse novos recursos em um ritmo que atendesse aos desejos de seus clientes. O controle de qualidade também foi aprimorado por meio da criação de ambientes de teste e produção, permitindo que novos recursos sejam testados antes de serem liberados para o usuário final.

Antes do envolvimento da DNX, a Galax Pay estava restrita a liberar novas funcionalidades manualmente apenas aos finais de semana. Agora, o time tem a flexibilidade de liberar novas funcionalidades de três a quatro vezes por dia.

 

Conformidade PCI

 

O ambiente desenvolvido com a solução Citadel permite que a plataforma Galax Pay atinja a conformidade com PCI rapidamente, por esse ambiente ser compatível com PCI em sua construção. A Galax Pay também utilizou o DNX Managed Services, serviço oferecido pela DNX, para coletar evidências para uma empresa externa de auditoria, que confirmou sua conformidade. Isso garantiu a certificação PCI da empresa.

Uso Contínuo de Serviços Gerenciados

Reconhecendo a eficiência do trabalho da DNX ao longo do projeto, a Galax Pay optou por fazer uso contínuo do DNX Managed Services, que vem agregando valor à empresa há mais de um ano.

Atualmente, a DNX fornece um serviço de extensão SRE para a Galax Pay, onde a DNX é a parceira expert da AWS e DevOps da Galax Pay. Ao estabelercer uma parceria de confiança, a Galax Pay não precisa se lançar no mercado de trabalho em busca de mão-de-obra especializada. Isso garante benefícios ao cliente final da Galax Pay, já que o time pode manter o foco no que faz a aplicação rodar melhor – solucionar bugs, implementar melhorias e adicionar novos recursos que facilitam a vida dos das pessoas e empresas que contam com o serviço da Galax Pay.

Confira nossos projetos de open-source em github.com/DNXLabs e siga-nos no LinkedInTwitter e Youtube.

Migrate from Azure to AWS

Migrating from Azure to AWS

About Ferret

Ferret is a company providing a Relationship Intelligence solution. It collects data from tens of thousands of sources, uses AI and machine learning to classify this data, and allows its customers to have access to exclusive databases, such as historical and real-time negative news, politically exposed people, papers and leaks, illegal activity, social media sentiment analysis, and more.

The Business Challenge

Ferret started developing and deploying their Relationship Intelligence solution on Microsoft Azure however they faced major issues being the most critical issues were related to training their ML Model’s as Azure infrastructure could not scale to provide the capacity they required. They also faced a lot of challenges to import the large datasets from on-premise to Azure and could not successfully import the Production DB using their tool of choice (Pentaho Kettle) or Azure Data Factory as the data, application, and its’ DevOps team worked in silos and were not able to solve data migration issues end-to-end.

The suggested solution to split their workloads between different Azure data centers produced a significant delay and issues with data integrity. Moreover, providing a big impact on their confidence to deliver and launch their solution on time; compromising their business operations.

Moreover, the fees of 80 K per year for only the test environment have already superseded their expectations.

Ferret understand the benefits of being in the cloud and, most of them align with their company’s needs. Therefore, after not obtaining the desired cloud outcomes at Azure, the company decided to invest in migrating its workload to AWS.

Ferret required a partner with extensive knowledge and expertise with cloud and AWS solutions to overcome the issues with their complex infrastructure to assist them deliver a stable and reliable application by their deadline on a more cost-effective basis.

The Assessment Phase

DNX Solutions was engaged to create and execute a roadmap for Ferret’s migration from Azure to AWS ensuring the company obtained the AWS Migration values of cost-saving, staff productivity, operational resilience along fast time to market.

During the discovery phase, utilising AWS Migration Readiness Assessment ( MRA) and workshops,  DNX determined what was Ferret’s business and technical capabilities ( the interdependencies, storage constraints, release process and level of security) .

Cloud Migration Assessment Phase

With all necessary information and, based on AWS “The 7R’s” best practices ( retain, retire, relocate, rehost, repurchase, replatform and refactor)  DNX developed and proposed the following migration plan:

Migration Plan

The Mobilise Phase

Mobilise Phase

Migration Strategy

Migration Phase

Due to Ferret’s implementation time constraint and focus on fast delivery DNX designed an AWS platform that relies on the following migration strategies:

  • Re-hosting (lift-and-shift)
  • Re-platforming

The main focus was to do a re-hosting of all the relevant services from Azure to AWS but to do a re-platforming of specific services based on AWS managed services which can provide better control over the solution while reducing maintenance overhead and delivery time.

With this statement in mind,  DNX Solutions followed the following design principles:

  • Kubernetes only for Stateless apps.
  • AWS managed services over self-maintained services.
  • Bamboo for mobile app and Bitbucket Pipelines + Argo CD for cloud apps
  • Az Blob Storage to AWS S3
  • Az Cosmos DB to Atlas MongoDB
  • k8s Kafka/Zookeeper to AWS MSK (Managed Service for Kafka)
  • k8s Elasticsearch/Kibana to AWS Elasticsearch
  • k8s neo4j to neo4j on AWS EC2
    Az AKS to AWS EKS

The Solution

Cloud Foundation

The project started with the implementation of our Cloud Foundation which combines years of cloud experience in a platform built with simplicity in-mind, infrastructure-as-code, open-source technologies, and is designed for AWS with well-architected principles. 

Cloud Foundation

Application Modernisation

Cloud Foundation

The second phase involved migrating applications running on Azure Kubernetes Service to the AWS Managed Kubernetes Service (aka EKS). At Ferret, they used to have StatefulSets running and hosting their data solutions, such as Elasticsearch, Kafka, etc. These services were replatformed to AWS Managed services so that we could offload the work of maintaining these pieces of infrastructure.

Next, we migrated the Kubernetes stateless apps to EKS. One of the first choices was to use Spot Instances, which can be up to 70% cheaper than regular instances. We also used our open source projects to create the EKS Cluster and added custom Kubernetes controllers to deploy ArgoCD, manage external secrets, configure AWS Load Balancer, control DNS, push to CloudWatch, etc.

This step allowed us to not only migrate the applications, but also set up a GitOps workflow using ArgoCD, making things more efficient and empowering developers to have more control over their kubernetes deployments. Additionally, we configured GPU instances on kubernetes to run a very specific AI workload.

Furthermore, since one of the goals was to reduce operational costs, their hosted pipeline was migrated to a managed pipeline solution.

Just to mention a few other services involved in this phase:

DNX provided transfer knowledge throughout different sessions to enable the customer to understand AWS concepts to properly maintain the application safe, reliable, and at a predictable cost.

DNX also created cloud watch performance dashboards and set up alarms to inform Ferret of any potential problems and to keep the application safe.

Data Platform

Ferret was not able successfully migrate their massive on-premise datasets to Azure. In their initial attempt to migrate using their on-premise ETL tool (Pentaho Kettle), they faced multiple security and connectivity issues and the tool has been discarded. A second attempt was made using Azure Data Factory, however, the performance achieved seemed not feasible as the estimated time would take a whole week, and it failed multiple times. They ended up only uploading a small amount of data to enable development and testing, and raise the data migration as an issue and they have never been able to solve it.

DNX proposed the below architecture for the  Data Platform. In this phase, we worked to Ferret’s instruction which was to configure their Mongodb cluster and permit network connectivity to their external tool, enabling them to feed their data.

Data Platform

They were using CosmoDB and a hosted Elasticsearch cluster at Azure. They were using an on-premise Pentaho Kettle to migrate the data. 

We proposed S3 for staging, a managed Elasticsearch, and Atlas Mongo to replace CosmoDB. The initial recommendation was to use Glue for ETL. However, after further discussion with the customer, we decided to maintain the Pentaho ETL as Ferret’s developers were familiar with this tool and helped them to connect into our secure network to import the data and move it to the required endpoints. 

Conclusion

Everything described in this case study was planned, designed, and implemented with key principles in mind, such as high availability, scalability, disaster recovery, security, elasticity, fault tolerance, and cost optimisation.

These new environments and AWS services provided Ferret the following benefits:

  • Operational Excellence
    By moving to AWS, DNX worked on the well-architect platform, enabling the customer to have an automated deployment process, self-healing applications, and more efficient application management.
  • Creating more cost-effective IT environments
    Creating more cost-effective IT environments by optimizing compute, storage, and database costs or moving away from running their IT infrastructures with Azure,  Ferret will spend 50%  less on AWS fees on Kubernetes cluster with CPU and GPU using spot instances running a comparable infrastructure.
  • Improved time-to-market 
    We were able to reduce data migration time from 24h to 5h by using parallelism and optimising packet sizes, whilst reducing cost and complexity of the overall solution.
    Shifting IT staff focus to differentiated work and strategic business initiatives, including substantial gains on average 62% more efficient and application developers will be 25% more productive with AWS.
  • Instilling IT and business operations
    with the agility required to deliver cost-effective IT resources on an on-demand basis to address business opportunities as they arise, with interviewed organizations delivering almost three times more new application features with AWS, helping them win more business and increase revenue

Na DNX Brasil, rabalhamos para trazer uma melhor experiência em nuvem e aplicações para empresas nativas digitais.

Trabalhamos com foco em AWS, Well-Architected Solutions, Containers, ECS, Kubernetes, Integração Contínua/Entrega Contínua e Malha de Serviços.

Estamos sempre em busca de profissionais experiêntes em cloud computing para nosso time, focando em conceitos cloud-native.

Confira nossos projetos open-souce em https://github.com/DNXLabs e siga-nos no Twitter, Linkedin or YouTube.