Tecnologias mudam constantemente. Mais importante do que acumular ferramentas é saber escolher a solução adequada, entender seus impactos e construir sistemas que continuem sustentáveis depois da primeira entrega.
Minha principal experiência está no desenvolvimento backend, na construção de integrações e na evolução de aplicações em produção. Também atuo em interfaces web, aplicações desktop e mobile, bancos de dados, infraestrutura e automações.
Backend e serviços
Desenvolvo APIs, serviços, integrações e rotinas de processamento utilizando diferentes ecossistemas, sempre considerando clareza, manutenção, desempenho e confiabilidade.
TypeScript e Node.js
Utilizo TypeScript como uma das minhas principais linguagens, especialmente na construção de APIs, microsserviços, integrações e aplicações orientadas a eventos.
Tenho experiência com:
- Node.js;
- NestJS;
- Express;
- APIs REST;
- Webhooks;
- Mensageria;
- Processamento assíncrono;
- Schedulers e tarefas recorrentes;
- Autenticação e autorização;
- Integração com serviços externos.
C# e .NET
Atuo com C# tanto no desenvolvimento web quanto na criação e manutenção de aplicações desktop e serviços corporativos.
Minha experiência inclui:
- ASP.NET Core;
- .NET Framework;
- Entity Framework;
- Aplicações e serviços Windows;
- WPF;
- APIs e integrações;
- Processamento de documentos;
- Manutenção e modernização de sistemas legados.
Java, Groovy e Grails
No ecossistema JVM, trabalho com Java, Groovy e Grails na evolução de aplicações financeiras de grande escala.
Essa atuação envolve manutenção cuidadosa de sistemas em produção, desenvolvimento de funcionalidades, refatoração, revisão de código e melhorias voltadas à qualidade e à sustentabilidade da aplicação.
Integrações
Tenho experiência na integração entre sistemas internos, plataformas externas e serviços de terceiros por meio de:
- APIs REST;
- SOAP e WSDL;
- Webhooks;
- JSON e XML;
- Filas e mensageria;
- Serviços de autenticação;
- Processamento e sincronização de dados.
Frontend e experiência de uso
No frontend, busco construir interfaces claras, responsivas e fáceis de manter. Minha experiência envolve desde sistemas administrativos extensos até aplicações públicas e ferramentas voltadas para desenvolvedores.
Vue e Nuxt
Vue.js e Nuxt fazem parte da minha trajetória desde os primeiros projetos profissionais.
Já trabalhei com:
- Vue.js;
- Nuxt;
- Composition API;
- Aplicações SPA;
- Renderização no servidor;
- Componentização;
- Gerenciamento de estado;
- Integração com APIs;
- Interfaces responsivas;
- Tailwind CSS.
Angular
Tenho experiência na manutenção e evolução de aplicações corporativas desenvolvidas com Angular, incluindo sistemas extensos, componentes reutilizáveis, telas administrativas e integrações com bibliotecas de interface.
Qualidade de interface
Ao desenvolver uma interface, procuro considerar:
- Responsividade;
- Hierarquia visual;
- Acessibilidade;
- Estados de carregamento e erro;
- Feedback das ações;
- Consistência entre componentes;
- Desempenho percebido;
- Manutenção a longo prazo.
Bancos de dados e desempenho
Trabalho com bancos relacionais, bancos orientados a documentos e ferramentas de cache, escolhendo cada tecnologia conforme as características do problema.
Bancos relacionais
- PostgreSQL;
- MySQL;
- SQL Server.
Tenho experiência com modelagem de dados, consultas complexas, índices, migrations, transações e investigação de problemas de desempenho.
Bancos não relacionais e cache
- MongoDB;
- Redis.
Utilizo MongoDB em aplicações que se beneficiam de documentos flexíveis e Redis em cenários de cache, sessões, filas, comunicação entre instâncias e controle de concorrência.
Otimização
Entre as atividades relacionadas a desempenho, estão:
- Análise e otimização de consultas;
- Criação e revisão de índices;
- Redução de processamento desnecessário;
- Estratégias de cache;
- Processamento em lotes;
- Controle de concorrência;
- Investigação de gargalos;
- Profiling e observabilidade.
Infraestrutura e operação
Além do desenvolvimento das aplicações, tenho experiência com a infraestrutura necessária para executá-las e mantê-las em produção.
Cloud e servidores
- AWS;
- Oracle Cloud;
- Linux;
- Windows Server;
- Docker;
- Docker Compose;
- Armazenamento compatível com S3;
- Configuração e manutenção de serviços.
Já atuei na publicação de aplicações, administração de servidores, configuração de bancos de dados, armazenamento de arquivos e diagnóstico de problemas em ambientes de produção.
Observabilidade
Procuro desenvolver sistemas que não apenas funcionem, mas que também permitam entender rapidamente o que está acontecendo quando alguma coisa sai do esperado.
Minha experiência inclui:
- Logs estruturados;
- Métricas;
- Rastreamento de operações;
- Monitoramento de serviços;
- Health checks;
- Diagnóstico de erros;
- Análise de desempenho.
Aplicações desktop e mobile
Minha atuação não se limita ao navegador. Também desenvolvi aplicações desktop e experiências mobile integradas aos mesmos ecossistemas utilizados no backend.
Desktop
- WPF com C# e .NET;
- Electron;
- Tauri.
Tenho experiência na criação de aplicações desktop, integração com recursos do sistema operacional, comunicação com APIs e modernização de soluções legadas.
Mobile
- React Native;
- Aplicações e protótipos multiplataforma;
- Integração com APIs;
- Compartilhamento de código e regras entre plataformas.
Automação e coleta de dados
Utilizo automações para reduzir tarefas manuais, integrar sistemas e processar informações em escala.
Tenho experiência com:
- Python;
- JavaScript e TypeScript;
- Puppeteer;
- Playwright;
- Web scraping;
- Processamento de arquivos;
- Importação e exportação de dados;
- Rotinas administrativas;
- Integrações entre sistemas sem APIs disponíveis.
Automação, para mim, não significa apenas executar tarefas mais rápido. Significa reduzir erros operacionais e permitir que as pessoas concentrem tempo em atividades de maior valor.
Qualidade e práticas de engenharia
As ferramentas são apenas parte do trabalho. A maneira como o software é projetado, revisado e mantido tem impacto direto em sua vida útil.
Entre as práticas que aplico no dia a dia, estão:
- Clean Code;
- Clean Architecture;
- Princípios SOLID;
- Revisão de código;
- Refatoração;
- Testes unitários e de integração;
- Versionamento com Git;
- Pull requests;
- Documentação técnica;
- Padronização entre projetos;
- Segurança por padrão;
- Análise de trade-offs;
- Colaboração e mentoria.
Não busco abstrações apenas por elegância. Prefiro soluções proporcionais ao problema, com responsabilidades claras e complexidade justificada.
Ferramentas de desenvolvimento
Algumas das ferramentas que fazem parte do meu fluxo de trabalho:
- Git e GitHub;
- Docker;
- Postman;
- Swagger e OpenAPI;
- Visual Studio;
- Visual Studio Code;
- IntelliJ IDEA;
- DataGrip;
- DBeaver;
- Jest;
- Vitest;
- Ferramentas de inteligência artificial para pesquisa, revisão e produtividade.
Utilizo inteligência artificial como apoio ao processo de desenvolvimento, sem substituir revisão técnica, validação e responsabilidade sobre o código entregue.
Comunicação
Português: nativo.
Inglês: avançado, com experiência em leitura de documentação, cursos, comunicação escrita e conteúdos técnicos.
Onde mais gero valor
Minha experiência é especialmente relevante em projetos que envolvem:
- Integrações entre sistemas e serviços externos;
- Aplicações corporativas com regras de negócio complexas;
- Evolução e modernização de sistemas legados;
- APIs, microsserviços e processamento assíncrono;
- Otimização de desempenho e consultas;
- Automação de processos manuais;
- Aplicações que precisam operar em diferentes plataformas;
- Melhoria de qualidade, observabilidade e manutenção;
- Colaboração técnica e compartilhamento de conhecimento.
Competências aplicadas na prática
Uma lista de tecnologias mostra apenas parte da história. Nos meus projetos, apresento como essas ferramentas foram utilizadas, quais problemas precisavam ser resolvidos e quais decisões técnicas fizeram parte de cada solução.