Sobre mim:
Tenho uma visão crítica em relação aos requisitos e à qualidade do código, sendo bastante preocupado com sua manutenção futura. Meu foco é entregar valor ao cliente!
Para garantir qualidade, costumo projetar a solução de uma tarefa através de fluxogramas/diagramas e quebrá-la em passos a serem feitos para só depois começar a escrever código.
Resumo da experiência profissional:
Minha experiência abrange a migração de arquiteturas simples para a Clean Architecture, garantindo o desacoplamento entre as regras de negócio e a utilização de frameworks e bibliotecas. Domino alguns recursos do NestJS, incluindo pipes, guards, interceptors, modules, providers, autorização, autenticação, hashing de senhas, guards e exceptions. Além disso, consulto frequentemente a documentação oficial para ter certeza de que estou seguindo as práticas recomendadas.
Possuo uma boa experiência com ORMs e query builders, trabalhando com bancos de dados como PostgreSQL, MongoDB e SQLite. Já desenvolvi soluções para processamento de arquivos PDF, web scraping e gerenciamento de arquivos multimídia (como imagens, vídeos e documentos) utilizando MinIO. Em termos de infraestrutura, sou proficiente no uso de Docker e já realizei a transição de Docker Compose para Kubernetes, o que possibilitou escalabilidade horizontal e alta disponibilidade dos serviços. Dentro de ambientes Kubernetes, configurei um Load Balancer entre deployments com o servidor web NGINX. Também implementei backups automáticos de banco de dados por meio de cronjobs e a utilização do livenessprobes para um monitoramento contínuo da saúde da aplicação. Configurei um CI/CD pelo Github Actions que garante a integração contínua com testes unitários, de integração, E2E e a padronização de código com ESLint, e também, a entrega contínua por artefatos e imagens Docker no DockerHub de forma automática seguindo o GitFlow.