01 /
Projetos em foco
Projetos pessoais para explorar decisões de backend na prática. Código, documentação e instruções de execução disponíveis nos repositórios.
01 — PROCESSAMENTO DE EVENTOS
Pedidos com
Java e Kafka
Publicar eventos de pedidos e manter uma projeção consultável no PostgreSQL, tratando reentregas e falhas.
JavaSpring BootKafkaPostgreSQL
Decisões e limites do projeto
- Identificação de eventos já processados e atualização transacional da projeção.
- Retries para falhas transitórias e encaminhamento de falhas permanentes para DLT.
- Entrega at-least-once: a idempotência no banco não equivale a uma transação distribuída entre Kafka e PostgreSQL.
Ver código e documentação ↗
02 — CONSISTÊNCIA E CONCORRÊNCIA
Transferências
idempotentes
Receber solicitações de transferência e processá-las de forma assíncrona, considerando repetição de requisições e concorrência.
JavaSpring BootPostgreSQLGatling
Decisões e limites do projeto
- Chave de idempotência para identificar solicitações repetidas.
- Processamento em background, com controle de concorrência no acesso ao banco.
- Cenários de carga com Gatling e resultados locais documentados. Os resultados não representam uma garantia de capacidade em produção.
Ver código e documentação ↗
03 — PERFORMANCE E DADOS
Exportação de
500 mil registros
Comparar a exportação de dados carregados em uma lista com a leitura incremental via JDBC Streaming.
JavaJDBCPostgreSQLCSV
Experimento e limites da medição
- Leitura incremental com fetch size e escrita do CSV com BufferedWriter.
- Experimento local documentado com 500 mil registros, comparando tempo e uso de heap.
- Os valores de heap são amostras durante a execução; não comprovam, isoladamente, o pico de memória ou o desempenho em outros ambientes.
Ver código e documentação ↗
Também exploro processamento de webhooks com Go e RabbitMQ no Go Webhook Processor ↗. Veja outros estudos no meu GitHub ↗.
02 /
Experiência profissional
Minha trajetória começou com estágios em Java. Após um período em outras atividades profissionais, retomei o desenvolvimento atendendo clientes e aprofundei minha formação até chegar à atuação atual em backend.
NOV 2024 — ATUAL
Remoto · empresa em Belo Horizonte
Desenvolvedor Backend Java
Ultracar
Desenvolvimento e evolução de um sistema de gestão do setor automotivo. Investigo demandas e incidentes, proponho soluções técnicas e acompanho as entregas até produção em colaboração com a equipe.
- Contribuição para a integração do WhatsApp ao sistema e para o desenvolvimento da versão freemium.
- Desenvolvimento de workers e consumers com Kafka e utilização de filas de tarefas com RabbitMQ.
- APIs REST e microsserviços para clientes, veículos, ordens de serviço, estoque, vendas e financeiro.
- Integrações fiscais e de pagamento, processamento de XML e documentos fiscais, autenticação e controle de permissões.
JavaSpring BootPostgreSQLKafkaRabbitMQAmazon S3JPA/HibernateLiquibase
JAN 2023 — NOV 2024
Porto Seguro · BA
Desenvolvedor Web Freelancer
Autônomo
Sites e landing pages para locadoras de veículos, do levantamento de necessidades à publicação e suporte. Configuração de catálogos, formulários de contato e solicitações de reserva, acesso ao WhatsApp e acompanhamento de acessos com Google Analytics.
WordPressElementorJavaScriptHTML/CSS
JAN — AGO 2015
Belo Horizonte · MG
Estagiário de Desenvolvimento Java
PUC Minas · Instituto de Ciências Biológicas e da Saúde
Desenvolvi um sistema para disponibilização de certificados de eventos, com verificação da presença registrada no banco de dados. Também desenvolvi o portal institucional do ICBS.
Java / JSPPostgreSQLHTML/CSSJavaScriptWordPress
JAN — JUN 2014
Belo Horizonte · MG
Estagiário de Desenvolvimento Java
Ministério da Saúde
Desenvolvi um sistema de cadastro de bens materiais, como móveis e equipamentos, utilizando Java, JSP e PostgreSQL. Também desenvolvi o site da intranet local com WordPress.
Java / JSPPostgreSQLHTML/CSSJavaScriptWordPress
Outras experiências profissionais
Localiza · Auxiliar de Operações
Dezembro de 2021 a abril de 2023 · Porto Seguro
Conferência, checklist e registro das devoluções de veículos no sistema.
Sada Transportes · Motorista de Pensilina
Novembro de 2018 a junho de 2021 · Betim
Atuação na operação da Sada Transportes na unidade da Fiat.
03 /
Competências técnicas
As ferramentas do trabalho e os temas que aprofundo em projetos próprios.
Backend e persistência
Aplicação profissional em APIs e regras de negócio.
JavaSpring BootAPIs RESTPostgreSQLSQLJPA/HibernateLiquibase
Mensageria e armazenamento
Workers, consumers, filas de tarefas e uso de S3 na Ultracar.
Apache KafkaRabbitMQAmazon S3Processamento assíncrono
Projetos e aprofundamento
Práticas exploradas nos projetos públicos de backend.
JDBC StreamingJUnit / MockitoGatlingDockerIdempotênciaPrometheus / Grafana