“Aqui estou rodeado de pessoas que pensam diferente e isso me encoraja a sair da minha própria caixinha de pensamento.”
Pedro sempre gostou de resolver problemas. Na faculdade de Ciências da Computação, estudou e ganhou uma bolsa para fazer parte de um grupo que participava de programação competitiva pelo Brasil. Nesse novo universo, encontrou maneiras de aplicar suas habilidades e conseguiu enxergar melhor os resultados dos seus esforços nos tão famosos contests na prática. Em uma dessas competições, Pedro conheceu a VTEX e, depois de uma palestra sobre a nossa estrutura e nosso programa de estágio, decidiu participar do processo seletivo.
Dica do Pedro: “Ser sincero, mostrar suas habilidades e mostrar o quanto você quer estar na VTEX.”
Natural de Aracati, no Ceará, mais de 2000 km separam a cidade do Pedro do Rio de Janeiro, onde fica a sede da VTEX. Chegar no Rio foi um choque. Pedro nunca tinha andado de metrô, nem vivenciado de perto a experiência de uma cidade grande! Mas esses obstáculos não intimidaram o estudante que buscava cada vez mais desafios, principalmente o de poder participar da elaboração de um projeto próprio dentro da VTEX.
O projeto
O projeto do Pedro tinha como objetivo criar uma nova versão da etapa de pagamento do novo Checkout da VTEX, mais especificamente o formulário de cartão de crédito, além de salvar esses dados automaticamente.
A etapa de pagamento é considerada uma das mais críticas para a experiência do usuário, ou seja, tem que ser rápida, segura e fácil de usar para que o consumidor sinta confiança ao finalizar a sua compra. O projeto apresentou muitos desafios técnicos porque envolve a PCI (payment card industry), uma certificação que garante a segurança das informações bancárias do usuário, trazendo regras e algumas limitações para o desenvolvimento dessa etapa. Pedro e a equipe iniciaram o trabalho utilizando o VTEX IO, a nossa plataforma de desenvolvimento como infraestrutura do projeto. Para o desenvolvimento das aplicações, eles usaram React, GraphQL e NodeJS.
O primeiro obstáculo que surgiu foi ter que lidar com dados sensíveis como informações bancárias. Isso exige o uso de criptografia para transmissão e armazenamento, bem como um rígido controle de acesso às informações, entre outras medidas de segurança que garantem o isolamento e integridade dos dados.
Mas, como resolver isso? A equipe isolou a parte crítica da etapa de pagamento em um componente específico a ser renderizado em um iframe e servido pelo PCI Gateway da VTEX e a outra parte foi desenvolvida no VTEX IO. Dessa forma, elementos como dados sensíveis ao pagamento (número do cartão, data de expiração e CVV) estavam protegidos pelas normas da PCI dentro do iframe, enquanto outros elementos poderiam ser desenvolvidos sem essas limitações. Algumas mudanças foram necessárias para estabelecer uma boa comunicação entre o iframe e o contexto da página sem perder a segurança dos dados.
Pedro precisou coordenar a integração entre o seu time e outros para que as features que ele necessitava estivessem prontas a tempo de implementá-las no projeto. O time do PCI Gateway, por exemplo, foi fundamental para que o projeto do Pedro conseguisse garantir a segurança do usuário. O time de PCI Gateway montou um esquema de transmissão criptografada de dado – usando RSA – entre o cliente e o servidor. A troca entre as duas equipes foi importante para garantir o respeito às normas de PCI e o fluxo de informação contínuo, evitando falhas de segurança no sistema.
Os planos do Pedro e do time de Checkout é que tudo já esteja funcionando nas plataformas da VTEX no próximo mês. Depois de pronto, o projeto do Pedro irá impactar, diretamente, 2.500 clientes da VTEX e mais de 20 milhões de usuários por dia, em mais de 28 países.
“Estar aqui na VTEX me ajudou a evoluir para além da qualidade técnica. Me ensinou a construir um fluxo de trabalho em equipe e maior proatividade na resolução de problemas.”
O primeiro passo para transformar a sua carreira. Para conhecer mais e saber como se inscrever no nosso programa de estágio verão 2021, acesse o link.