Gabriel R. Antunes's CV
- Email: gabrielrodantunes@gmail.com
- Location: Ji-Paraná, Rondônia, Brasil
- Website: guesant.net
- LinkedIn: gabrielrodantunes
- GitHub: guesant
Perfil
Desenvolvedor de software
Desenvolvedor de software com experiência em sistemas públicos, freelances, software no setor privado e contribuições open source. Atuo entre backend, frontend e integrações, com experiência crescente nas camadas de infraestrutura e operação ao redor das aplicações.
Experiência
Desenvolvedor Full Stack Contratado (Terceirizado)
Rondônia, Brasil
Jul 2025 – Mai 2026
Rovema Bank
Evolução, manutenção e sustentação de sistemas corporativos em produção, colaborando com equipes multidisciplinares em soluções de gestão de frota, serviços financeiros e plataformas institucionais.
-
Desenvolvi e aprimorei funcionalidades para gestão de frotas, abastecimento, clientes, faturamento e transações.
-
Implementei regras de negócio relacionadas a permissões de acesso, processamento financeiro, pagamentos, cálculos e validação de dados.
-
Desenvolvi mecanismos de validação e conciliação de informações, além de relatórios para suporte às atividades operacionais, auditoria e análise de dados.
-
Investiguei gargalos de desempenho em aplicações e bancos de dados, reduzindo tempos de execução de processos de minutos para poucos segundos.
-
Atuei no diagnóstico e na resolução de incidentes em produção, contribuindo para estabilidade e continuidade operacional.
-
Automatizei etapas de implantação e atualização de aplicações, incluindo publicação, migração de banco de dados e gerenciamento de serviços.
-
Reduzi o tempo de compilação e publicação de aplicações de aproximadamente 14 para 7 minutos.
-
Desenvolvi e mantive serviços e APIs para integração com soluções financeiras, incluindo pagamentos instantâneos e processamento de arquivos bancários.
-
Contribuí para integrações entre sistemas, validação de dados e execução assíncrona de tarefas.
-
Colaborei na implementação de controles de segurança para serviços financeiros.
-
Implementei páginas institucionais e landing pages a partir de layouts definidos pelo time de Design.
Bolsista Desenvolvedor de Software
Rondônia, Brasil
Fev 2025 – Set 2025
Defensoria Pública do Estado de Rondônia
Continuidade da atuação no projeto Central de Vagas, coordenado pelo IFRO em parceria com TCE-RO e DPE-RO.
-
Desenvolvi funcionalidades full-stack com JavaScript, TypeScript, Node.js, NestJS, React e Next.js.
-
Implementei relatórios de agendamentos, filas e vagas, geração de PDFs com Bun e jsreport e cinco vídeos tutoriais.
-
Liderei a migração da infraestrutura do TCE-RO para Docker Swarm na DPE-RO, incluindo ambientes, banco de dados e arquivos.
-
Trabalhei com Docker e GitLab CI na automação de deploys, pipelines e monitoramento.
-
Participei da integração com Gov.br e implementei autenticação local alternativa para desenvolvimento usando OpenID Connect.
-
Criei indicadores de posição nas filas e status de reservas, filtros por local de atendimento e notificações por e-mail.
-
Aprimorei consultas, comprovantes e mensagens com endereços dos locais de atendimento e QR Codes.
-
Evoluí critérios, etapas escolares, transferências e recuperação de dados por CPF.
-
Prototipei no Figma consultas individuais por CPF e configurações de matrícula.
-
Utilizei shadcn/ui, Radix UI, SonarQube, Cypress, Git, Jira e sprints.
-
Participei de treinamentos, suporte técnico e transferência de tecnologia.
Desenvolvedor Web Full Stack
Ji-Paraná, Rondônia, Brasil
Mar 2025 – Jun 2025
Desenvolvimento ponta a ponta do site institucional do escritório, do levantamento de requisitos à implantação.
-
Levantei requisitos e defini funcionalidades para o site institucional.
-
Desenvolvi um tema WordPress personalizado com PHP, HTML, CSS, JavaScript e Bootstrap 5.
-
Estruturei o gerenciamento de conteúdo com Advanced Custom Fields.
-
Implementei consulta de processos jurídicos com Custom Post Types e WP_Query.
-
Integrei a pesquisa textual ao Relevanssi e desenvolvi filtros por tipo de processo.
-
Desenvolvi páginas de detalhamento de processos e documentos relacionados.
-
Integrei e personalizei formulários com Everest Forms.
-
Realizei a implantação na Hostinger e configurei Cloudflare e DNS.
Bolsista Desenvolvedor de Software
Rondônia, Brasil
Jan 2024 – Jan 2025
Tribunal de Contas do Estado de Rondônia
Desenvolvimento do projeto Central de Vagas, coordenado pelo IFRO em parceria com TCE-RO e DPE-RO.
-
Desenvolvi funcionalidades full-stack com JavaScript, TypeScript, Node.js, NestJS, React e Next.js.
-
Refatorei telas, formulários e componentes de seleção, datas e intervalos.
-
Corrigi bugs e inconsistências identificadas em testes e análises do SonarQube.
-
Contribuí para a geração e ordenamento de filas conforme critérios de prioridade do GAEPE.
-
Desenvolvi o portal público de agendamentos e consulta de filas, disponibilizado em agosto de 2024.
-
Implementei dashboards de agendamentos, vagas e filas e notificações por e-mail.
-
Aprimorei configurações de agenda, remarcações, feriados e bloqueios de datas.
-
Apoiei a implantação do projeto-piloto em Ouro Preto do Oeste.
-
Trabalhei com Docker Swarm, GitLab CI, readiness probes e rolling updates.
-
Colaborei em protótipos no Figma, testes com Cypress e suporte aos usuários.
-
Trabalhei com metodologia ágil, sprints, Jira e Git.
Engenheiro de Software
Ji-Paraná, Rondônia, Brasil
Fev 2024 – Set 2024
Evolução, manutenção e sustentação em produção de uma plataforma de torneios de pesca.
-
Desenvolvi funcionalidades para criação, edição, gestão e inscrições em torneios individuais e por equipes.
-
Implementei gerenciamento de organizadores, juízes, fiscais e pescadores, com permissões por função.
-
Aprimorei busca, filtros, classificação, pontuação, análise e aprovação de postagens.
-
Corrigi formulários, validações, envio de imagens e documentos, navegação, layouts e traduções.
-
Investiguei e resolvi incidentes em testes e produção.
-
Atualizei o SDK do Expo e preparei o aplicativo para publicação na App Store.
-
Migrei a infraestrutura de hospedagem, instalei HestiaCP e migrei do Plesk.
-
Configurei domínios e DNS no Registro.br e na Cloudflare.
-
Participei do desenvolvimento de um microsserviço de compressão de vídeos.
-
Identifiquei e corrigi vulnerabilidades críticas de segurança.
Integrante do Projeto de Pesquisa Sistema Gerador de Horário Acadêmico
Ji-Paraná, Rondônia, Brasil
Fev 2022 – Dez 2023
IFRO, Instituto Federal de Educação, Ciência e Tecnologia de Rondônia
Participação em projetos de pesquisa e desenvolvimento de software no Campus Ji-Paraná.
-
Atuei como Desenvolvedor Técnico Júnior no projeto de elaboração de painel de monitoramento do ensino técnico dos estados.
-
Participei do levantamento de requisitos, avaliação de tecnologias, prototipação e documentação técnica.
-
Desenvolvi APIs REST e GraphQL com TypeScript, Node.js, NestJS e Apollo.
-
Modelei dados com PostgreSQL e TypeORM, implementando migrations e seeds.
-
Implementei upload de anexos, buscas com Meilisearch e exportação em CSV e JSON.
-
Desenvolvi interfaces com React, Next.js e Apollo Client.
-
Implementei editor visual de formulários com SurveyJS.
-
Criei a biblioteca Copper UI com base no Design System gov.br.
-
Integrei Keycloak com OAuth 2.0 e OpenID Connect.
-
Implementei autorização com CASL e validação com class-validator e Zod.
-
Contribuí para um monorepo modular, serviços Docker e documentação OpenAPI.
-
Realizei implantação técnica do backend na Microsoft Azure.
Produções Técnicas
Correção de autenticação SSR no Nuxt Auth
Jan 2023
Investiguei uma diferença entre a navegação no cliente e o SSR no fluxo de autenticação, em que joinPathToApiURLWN retornava uma promise durante a renderização no servidor. O PR #360, incorporado a partir da guesant-fix-359, corrigiu o await ausente e encerrou a issue #359.
AST e automação de releases do Unispec
Jan 2024
Desenvolvi um proof of concept de tooling de AST e contratos e evoluí seu fluxo de distribuição de pacotes. O PR #61, a partir da guesant-next, adicionou ast-builder e ast-utils; o PR #62 migrou consumidores dos pacotes obsoletos; o PR #93, a partir da feat/smart-release, adicionou automação condicional de releases; e o PR #96, a partir da feat/include-license-changelog-readme-in-packages, incluiu documentação e arquivos de licença nos artefatos publicados.
Ecossistema de editor visual UI5
Jan 2020
Desenvolvi e refatorei partes de um editor visual modular em React e Fabric.js nos repositórios ui5-monorepo e ui5-plugins. O trabalho incluiu a redução do bundle do editor no PR #146, a generalização do cálculo de dimensões no PR #137, a criação de um sistema reutilizável de ações no PR #131 e a infraestrutura de playground no PR #155. A camada de plugins recebeu smart rendering, ações de canvas, edição de escala e correções de overflow nos PRs #122, #194, #181 e #125.
Ferramentas de migração NativeScript Vue
2019 – 2020
Desenvolvi um serviço de migração configurável para projetos Vue e NativeScript Vue, incluindo transformação de templates, helpers de DOM, operações de arquivos, gerenciamento de pacotes e testes automatizados. O trabalho está preservado em sete repositórios arquivados na organização friendly-tnsvue, cujo README de perfil mapeia o serviço de migração anterior, os protótipos de plugin, a CLI e o plugin v0 e o monorepo v1. O PR #73, a partir da poc_001-conf, exportou o processo genérico de migração para um arquivo de configuração; o PR #58, a partir da feat/lib-test, adicionou testes unitários; e o PR #21, a partir da fix/extends-component, corrigiu componentes objeto com Vue.extend.
pwa-icon-generator
Jan 2019
Contribuição incorporada ao projeto que adicionou suporte a SVG e barra de progresso, corrigiu a centralização de imagens não quadradas, alertou sobre valores padrão e aprimorou o tratamento dos caminhos de ícones e saídas.
Contribuições upstream iniciais selecionadas
2019 – 2020
Trabalho upstream publicamente verificável realizado entre 2019 e 2020. No extenso.js, o PR #20, enviado a partir da branch fix/babelwebpack e incorporado à master, substituiu a sintaxe obsoleta de declaração de loaders do Webpack, atualizou pacotes e tratou a issue #17. Também abri o PR #24, a partir da feat/scale, relacionado à issue #19, propondo uma opção explícita de escala numérica; esse pull request foi encerrado sem ser incorporado. No vue-spinners-css, o PR #3, enviado a partir da feat/size-support e incorporado à master, implementou a propriedade size nos componentes de spinner em resposta à issue #1. No 100-days-css, o PR #4, enviado a partir da feat/config-info e incorporado à master, adicionou a geração de config.json a partir do histórico Git, ordenação determinística dos desafios e exibição do autor e da data de cada desafio. No Sergey, o PR #40, enviado a partir da patch-1 e incorporado à master, corrigiu a tag p de fechamento inesperada relatada na issue #39. Uma proposta posterior, o PR #43, da branch smart-changetag, continua aberta e substitui o processamento de tags baseado em expressões regulares por operações baseadas em seletores CSS e DOM.
ava-pro
2021 – 2022
Extensão de navegador para plataformas Moodle com busca e organização de disciplinas, fluxos de login automático, conversas em chat e notificações em segundo plano. O PR #16, incorporado a partir da 0.0.2-moodle-client-js, introduziu o pacote cliente do Moodle e encerrou a issue #15.
Relatos de issues upstream selecionados
2023 – presente
Relatei e investiguei problemas reproduzíveis em projetos públicos, incluindo a validação assíncrona com Zod na issue #37 do vorms, encerrada como concluída pelo projeto, e referências a propriedades espalhadas no Microsoft TypeSpec na issue #7673, também encerrada como concluída. Propus suporte mais amplo a monorepos no dependency-changesets-action na issue #394 e um PR #395 correspondente, ainda em draft.
Horários do IFRO Ji-Paraná
Jan 2022
Ferramenta que evoluiu do recorte de PDFs de horários por coordenadas para um pacote extrator, dados normalizados em SQLite e uma interface React consultável por turma e professor.
JipaCoding
Registros técnicos selecionados de um arquivo público de vídeos que reúne gráficos, algoritmos, debugging e modelagem de dados.
-
Gráficos e Renderização: Você precisa conhecer essa propriedade do CSS! | Object-fit.
-
Algoritmos e Debugging, Campo Minado: Campo Minado #01a: O Jogo, Estrutura e Tabela e Campo Minado #01b: "Você Perdeu" & Flood Filling.
-
Algoritmos e Debugging, Debugging e Modelagem de Dados: Atributos Quebrados no Modelo Conceitual do brModelo: Achando Uma Solução Rápida.
Eventos
Semana Nacional de Ciência e Tecnologia
Brasília, DF, Brasil
Jan 2022
Participante.
Palestra sobre Git e GitHub no IFRO, Campus Ji-Paraná
Jan 2023
Palestrante no Campus Ji-Paraná do IFRO sobre Git e GitHub.
Projetos
ava-pro
Extensão de navegador para plataformas Moodle com listagem e busca de disciplinas, cursos fixados, fluxos de login automático, acesso a chats e verificações em segundo plano por novas mensagens.
- Navegadores e Tooling de Aplicações: Web Scraping com Web Extensions | Estático | Introdução #01.
home-lab
Laboratório pessoal de infraestrutura em andamento onde investigo, na prática, as camadas ao redor de uma aplicação, incluindo máquinas virtuais, redes segmentadas, VPNs, firewalls, containers, Kubernetes, identidade e observabilidade.
- Infraestrutura e Redes: A Estrutura da Minha Rede e do Meu Homelab (versão 2026.06.06) e Dei uma arrumada na rede (firewall pfsense + proxmox + link oi + adaptadores gigabit usb).
infrastructure-and-cluster-notebook
Caderno público de engenharia onde registro investigações sobre infraestrutura e clusters por meio de hipóteses, testes reproduzíveis, falhas e revisões, em vez de apresentar o material como um tutorial acabado.
fantastic-images
Exploração antiga em TypeScript e Fabric.js para descrever templates de imagem e renderizar composições geradas em canvas. Entre os registros de Gráficos e Renderização estão Gerando Imagens a partir de Templates - Programando Gráficos #02, Gerando Vídeos com Algoritmos - Programando Gráficos #03 e Gerando Imagens a partir de Templates (fabric.js) - Programando Gráficos #02.
fabricjs-object-fit
2022 – presente
Biblioteca TypeScript publicada que oferece ao Fabric.js um comportamento semelhante a object-fit e object-position do CSS, incluindo suporte à serialização, testes e documentação. Portabilidade para o Fabric.js 7 no PR #23, a partir da feat/fabric-7, seguida pela introdução de uma estrutura de workspace no PR #33 e pela padronização dos nomes dos pacotes no PR #34, ambos a partir da kebab.
parcel-resolver-pnpm
Proof of concept de 2021 para investigar a forma como o Parcel tratava dependências instaladas via symlink pelo pnpm como dependências de código-fonte.
friendly-tnsvue
Proof of concept de 2019 para automatizar partes da migração de projetos Vue para NativeScript-Vue por meio de uma CLI, um serviço de migração e modelos reutilizáveis. O histórico está preservado em sete repositórios arquivados na organização friendly-tnsvue; o repositório separado nsvue-colors continua em guesant.
- Navegadores e Tooling de Aplicações: Migrando uma SPA Vue.js para Nativescript | Vue.JS para {N} #01.
gir-js
Investigação inacabada sobre o uso dos metadados do GObject introspection para expor bibliotecas nativas a runtimes JavaScript por FFI e derivar informações voltadas a TypeScript a partir de typelibs.
Unispec
Pesquisa e proof of concept arquivados sobre declarar contratos uma vez e derivar tooling para ecossistemas como NestJS, GraphQL, OpenAPI, Swagger e QuickType.
Ya Time Marker
PWA de 2021 em Ionic e React para registrar e pesquisar marcações de tempo mantendo o histórico no dispositivo, com importação, exportação e exclusão sob controle do usuário.
outro-bun
Ferramenta pontual em Bun e TypeScript que transformava a exportação da planilha de músicas da colação de grau em um fluxo automatizado de download e processamento de mídia com yt-dlp e FFmpeg.
- Automação e Tooling: COMO EU FIZ PARA BAIXAR VÁRIOS ÁUDIOS DE UMA PLANILHA com o BUN | yt-dlp; ffmpeg; bun js;.
nota-filler
Demonstrador antigo para preencher programaticamente uma folha ou template de notas escolares, publicado com uma demo web e um vídeo no JipaCoding.
alset-aloc
Sistema desktop de gestão de aluguéis em C# e WPF desenvolvido em equipe como requisito para conclusão do curso técnico em informática do IFRO.
Cases
Central de Vagas em Creches
Atuei como bolsista no time responsável por uma plataforma pública de inscrições, atendimento e gestão de filas de creches. O software foi registrado no INPI sob o processo BR 51 2025 006383-0; a base oficial do INPI permite a consulta pública do registro. Foi uma das minhas primeiras experiências prolongadas com software que chegou à produção e continuou exigindo suporte depois da implantação.
Horários do IFRO Ji-Paraná
Criei uma ferramenta que transformava os PDFs semanais de horários do campus em informações consultáveis por turma e professor. O que começou como um atalho de recorte depois virou dado estruturado, uma interface separada e, por fim, uma ponte para o problema mais difícil de gerar e administrar horários acadêmicos.
SIPEC
Atuei full stack em uma plataforma institucional de pesquisas na qual era possível criar projetos, montar formulários e coletar respostas com diferentes modos de acesso.
SISGHA / Ladesa: Gestão Acadêmica e Horários
Cheguei ao SISGHA depois de construir um visualizador pessoal para horários já publicados e perceber que exibir a grade era apenas o fim de um problema muito maior. Minhas contribuições atravessaram CRUDs e interface acadêmica, regras do gerador, infraestrutura e manutenção de cluster e, mais tarde, trabalho em aplicação, domínio e plataforma.
Fishing Booking
Entrei em um produto PHP já existente durante uma transição de equipe e ajudei a manter a evolução do sistema enquanto a responsabilidade mudava de mãos.
Fugiwara Advogados
Implementei a primeira versão do site institucional do escritório como um tema WordPress personalizado, com conteúdo estruturado por Secure Custom Fields.
ava-pro: Moodle Dentro de uma Extensão de Navegador
O AVA Pro nasceu dos meus experimentos com web scraping e virou uma extensão que interagia com o Moodle como aplicação autenticada, incluindo disciplinas, busca e fixação, fluxos de login, chats e verificações em segundo plano por novas mensagens.
Scrap Rain: Scraping de Catálogos em Múltiplas Fontes
Desenvolvi o Scrap Rain em um freelance para coletar catálogos de quatro sites de móveis e transformar estruturas de página diferentes em dados que pudessem ser persistidos e atualizados de forma incremental.
Experimentos
RPC em Web Extension Entre Página e Content Script
Jan 2023
Proof of concept colaborativo, em Manifest V3, para expor comunicação no estilo request e response entre código da página e o content script de uma extensão por meio de window.postMessage. O PR #3, incorporado a partir da change-usage-api, redesenhou a API de mensagens e encerrou a issue #1.
Ângulos dos Ponteiros em C#
Jan 2022
Pequeno exercício algorítmico em C# para calcular os dois arcos formados pelos ponteiros de um relógio de 12 horas, considerando o movimento contínuo do ponteiro das horas.
Educação
IFRO, Instituto Federal de Educação, Ciência e Tecnologia de Rondônia
Ji-Paraná, Rondônia, Brasil
2021 – 2023
Curso Técnico Integrado ao Ensino Médio in Informática
Competências
Tecnologias: PHP, Symfony, JavaScript, TypeScript, Node.js, NestJS, React, Next.js, React Native, Expo, PostgreSQL, Docker, Docker Swarm, GitLab CI, WordPress, Figma, Cypress, SonarQube, Keycloak, GraphQL, Azure
Certificações
-
Bootstrap 4
-
Front/Back End & UX/UI Design
-
JavaScript e jQuery
-
JavaScript Completo ES6
-
Web Design Completo
Idiomas
- Inglês, Professional Working