Pular para o conteúdo
caua.tolentino

Meus cases

Relatos de situações reais de trabalho: o problema, a investigação e o que mudou depois. Empresas e clientes estão anonimizados.

8 cases encontrados

  • Um administrador de loja não conseguia entrar no sistema. Na análise, descobri que o usuário estava excluído no banco e que a regra que impedia a exclusão só escondia um botão. Usei a lógica dela para criar a regra no backend, e a tela passou a seguir essa regra em todos os caminhos de exclusão.

    • Investigação
    • PHP
    • Symfony
    • Twig
    • JavaScript
  • Produtos grandes e leves eram cotados só pelo peso real, e o frete faturado chegava a quase dez vezes o cotado. Analisei os dois lados da integração, encontrei na plataforma uma comparação entre quilos e metros cúbicos e criei o cálculo do peso cubado que faltava.

    • Investigação
    • Integração
    • PHP
    • Symfony
  • Feeds de produtos com alguns milhares de itens saíam truncados, e aumentar a memória só adiava o problema. Diagnostiquei a causa e redesenhei a geração: em lotes, fora do request, com trava de concorrência e escrita atômica, para qualquer tamanho de catálogo.

    • Desempenho
    • Arquitetura
    • PHP
    • Symfony
    • Doctrine
    • Redis
    • Twig
    • XML
  • Quem errava algo no checkout ficava até 60 segundos sem conseguir comprar, em todas as lojas. Encontrei a causa na trava contra pedidos duplicados e defini em quais erros ela pode ser liberada, acabando com o bloqueio sem abrir espaço para cobrança dupla.

    • Investigação
    • PHP
    • Symfony
    • Redis
  • Quando a API de fretes recusava uma cotação, o log guardava só o status, e cada chamado exigia reproduzir a requisição à mão. Percebi o padrão, propus a correção e fiz o log mostrar o motivo da recusa, sem expor token e sem mudar o que o cliente vê.

    • Integração
    • Observabilidade
    • PHP
    • Symfony
    • Guzzle
    • PHPUnit
    • PHPStan
  • No marketplace, o administrador alterava o preço de uma loja e o valor ia para o preço de cadastro do produto, afetando todas as lojas sem preço próprio. Rastreei a regressão até uma mudança de nove meses antes e corrigi a gravação, com 15 cenários de teste.

    • Investigação
    • PHP
    • Symfony
    • Twig
    • JavaScript
    • MySQL
    • PHPUnit
  • Uma loja B2B tinha dois contratos com a transportadora e só conseguia usar um, e o token ficava em texto aberto na tela e no log. Projetei e implementei a escolha do token pelo perfil do cliente a cada cotação, com o token mascarado em todo lugar e 83 testes.

    • Integração
    • Funcionalidade
    • PHP
    • Symfony
    • Doctrine
    • MySQL
    • JavaScript
    • PHPUnit
  • Todo envio de loja com CNPJ por uma transportadora aérea era recusado pela API, porque a plataforma não tinha onde cadastrar o CNAE. Delimitei o escopo com testes reais e criei o campo de forma que ele só entra no envio quando existe, sem mudar nada para quem não usa.

    • Integração
    • PHP
    • Symfony
    • Doctrine
    • MySQL
    • PHPUnit