Sou João Paulo, engenheiro full-stack com foco em frontend, no Porto. Construo produtos em React e TypeScript, design systems e interfaces acessíveis e testadas para equipes como Hapimag, Betfair, Kantar e OLX.
P1 CONECTADOP1 CONECTADO · MOVA O CURSOR, ELE INCLINA
01EQUIPES EM QUE JOGUEI
Um jogador,
cinco equipes.
Projetos pela 99x, Aubay × Blip.pt (Flutter), Alter Solutions e Softo, além da Super Desenvolvedores, o negócio que cofundei no Rio.
2025 → HOJEP1
SUÍÇA
2023 → 2025
REINO UNIDO
2022 → 2023
REINO UNIDO
2018 → 2020
BRASIL
2021 → 2022
BRASIL
Suíça · Reino Unido · Portugal · Brasil
P1JOGANDO AGORA
02CONTROLES
Poucos botões.
Sem surpresas.
Um bom controle tem poucos botões, e cada um faz exatamente o que você espera, sempre. Construo interfaces do mesmo jeito: componentes pequenos e bem testados, com APIs claras, compostos em produtos que as equipes podem continuar expandindo, sem surpresas no meio da partida.
Fig. 1 · Os controles. Toque em uma linha abaixo e seu botão acende.Fig. 1 · Os controles. Aponte para uma linha abaixo e seu botão acende.
Interfaces
Interfaces de produto em React, TypeScript e Next.js: responsivas, acessíveis (WCAG) e agradáveis de usar.
REACT
TYPESCRIPT
NEXT.JS
TAILWIND
Design systems
Bibliotecas de componentes no Storybook que mantêm as equipes consistentes e aceleram as entregas.
STORYBOOK
RADIX UI
MATERIAL UI
Testes
Testes unitários, end-to-end, visuais e de regressão que encontram os bugs antes dos usuários.
JEST
VITEST
PLAYWRIGHT
CYPRESS
Performance
Interfaces leves e rápidas: code splitting, prefetch por intenção e renderização granular.
REACT COMPILER
TANSTACK
VITE
Full stack e migrações
APIs e dados quando o produto precisa, e migrações sem drama: PHP → NestJS, MySQL → PostgreSQL, Angular → React.
NODE.JS
NESTJS
POSTGRESQL
Fig. 2 · Jogador um, em dezoito cores. Aponte para qualquer lugar; os olhos seguem.
03JOGADOR UM
Comecei no Rio.
Jogo do Porto.
Minha carreira começou no Rio de Janeiro em 2018, como jovem aprendiz na OLX: primeiro automatizando planilhas de auditoria, depois construindo painéis animados em React com os melhores agentes de suporte do mês. O Rio me ensinou a construir do zero: cofundei um pequeno negócio e liderei a migração de uma fintech para uma stack moderna. O Porto me ensinou a fazer durar: design systems, suítes de testes e produtos que equipes na Suíça, no Reino Unido e em Portugal continuam expandindo.
Me importo com o que ninguém nota até quebrar: a API de um componente, o teste que falha primeiro, a página que continua rápida em um computador simples. Me dê a responsabilidade por um problema e vou levá-lo do diagnóstico à entrega, deixando a base de código mais fácil para quem vier depois.
BASE
Porto, Portugal
IDIOMAS
Português (nativo) · Inglês (C1)
FORMAÇÃO
Bacharelado em Sistemas de Informação na FIAP, 2019 a 2021
TAMBÉM
ESL Communication Skills na Rice University, 2022 · Cisco IT Essentials
04ARQUIVO DE SAVE
Sempre buscando
o topo do ranking.
Começou num Polystation de imitação, depois num PlayStation de verdade. Em todo jogo que levei a sério eu queria o maior ranking possível, e os hábitos que isso exigiu ainda guiam o meu trabalho.
FASE 1
Polystation → PlayStation
Primeiro o de imitação, depois o de verdade. Também conta.
TUTORIAL
FASE 2
Call of Duty
Joguei profissionalmente. Black Ops e Modern Warfare 3 foram os que mais me marcaram.
CONCLUÍDO
DESBLOQUEADO
JOGO EM EQUIPE
O melhor jogador perde para o melhor time. Ainda trabalho assim: calls claras, papéis claros.
FASE 3
League of Legends
Desde o beta. Diamante na segunda temporada, e uma tentativa real de virar profissional.
CONCLUÍDO
DESBLOQUEADO
LER O META
Cada patch muda o jogo; ou você se adapta, ou fica para trás. Hoje os patches são modelos novos, e eu jogo todos.
FASE 4
Switch & PS5
Ainda competitivo, mas hoje em dia jogo mais pela diversão.
JOGANDO AGORA
FASE BÔNUS
Pokémon
Amo Pokémon. Não, não tenho um favorito.
05MISSÕES
Dois atos,
uma campanha.
EM ANDAMENTOCONCLUÍDOMAIS RECENTE
ATO 2
Portugal
2022 → hoje
Feito para durar: sistemas, testes e equipes além-fronteiras.
2025 → hoje
EM ANDAMENTO
Suíça · remotoSuíça · remoto
Engenheiro de Software
99x para a Hapimag
Construindo do zero uma plataforma de gestão de equipes para uma empresa suíça com resorts na Europa: React e TypeScript no frontend, Python e FastAPI no backend, Contentful para conteúdo.Construindo do zero uma plataforma de gestão de equipes para uma empresa suíça com resorts na Europa: React e TypeScript no frontend, Python e FastAPI no backend, Contentful para conteúdo. Componentes reutilizáveis, performance, escalabilidade e mentoria.
Funcionalidades centrais de frontend para a plataforma da Betfair, em React e React Native. Manutenção de um design system no Storybook, com testes unitários, E2E, visuais e de regressão.Funcionalidades centrais de frontend para a plataforma de apostas esportivas da Betfair, do grupo Flutter, em React e React Native. Manutenção e evolução de um design system compartilhado no Storybook, coberto por testes unitários, E2E, visuais e de regressão.
Modernização de sistemas legados, com testes Playwright no Storybook e funcionalidades acessíveis (WCAG) com Radix UI.Modernização de sistemas legados de uma divisão da Kantar, com testes end-to-end em Playwright dentro do Storybook e funcionalidades acessíveis (WCAG) construídas com Radix UI.
Um amigo na Alter Solutions me chamou para a entrevista. Passei, e a campanha mudou para o Porto.
ATO 1
Rio de Janeiro
2018 → 2022
Feito peça por peça: de jovem aprendiz a cofundador.
2021 → 2022
CONCLUÍDO
Rio · remotoRio de Janeiro · remoto
Desenvolvedor Full Stack
Softo para a Doare
Para uma fintech: migrei microsserviços PHP para uma API NestJS, reconstruí a camada de dados de MySQL para PostgreSQL e migrei sozinho o aplicativo de Angular para React.Para uma fintech: liderei a migração de microsserviços PHP para uma API NestJS, reconstruí a camada de dados de MySQL para um esquema PostgreSQL normalizado e migrei sozinho o aplicativo de Angular para React. Entreguei um micro frontend em Next.js.
NESTJS · POSTGRESQL · REACT · NEXT.JS
2020 → 2023
CONCLUÍDO
Rio · remotoRio de Janeiro · remoto
Cofundador e Desenvolvedor Full Stack
Super Desenvolvedores
Um negócio para tornar a educação em tecnologia mais acessível no Brasil, com ferramentas financeiras e um e-commerce para quem ama tecnologia.Um negócio para tornar a educação em tecnologia mais acessível no Brasil, com ferramentas financeiras e um e-commerce para quem ama tecnologia. Interfaces React responsivas para pequenas empresas e nossos próprios produtos.
REACT · NEXT.JS · NODE.JS · REDUX
2018 → 2020
CONCLUÍDO
Rio · presencialRio de Janeiro · presencial
Jovem Aprendiz → Estagiário
OLX Brasil
Entrei pelo programa Jovem Aprendiz. Automatizei planilhas de auditoria, personalizei o Centro de Ajuda e construí painéis de ranking animados em React.Entrei pelo programa Jovem Aprendiz. Automatizei as planilhas da equipe de auditoria, personalizei o Centro de Ajuda para UX e acessibilidade e construí painéis de ranking animados em React.
Cada equipe deixou algo na mochila, separado por bolso. O nível de um item conta as equipes com que ele foi para produção; a raridade reflete esse histórico. Os equipados estão em uso na minha equipe atual.
BIBLIOTECAS8
React
NV 6DESDE 2018
EQUIPADO
TanStack Query
NV 2DESDE 2020
EQUIPADO
Redux
NV 2ATÉ 2025
Zod
NV 2DESDE 2021
EQUIPADO
Radix UI
NV 1DESDE 2022
React Hook Form
NV 1DESDE 2022
EQUIPADO
TanStack Table
NV 1DESDE 2022
EQUIPADO
Material UI
NV 2DESDE 2022
FRAMEWORKS5
Next.js
NV 2DESDE 2020
NestJS
NV 1ATÉ 2022
Tailwind CSS
NV 0DESDE 2022
React Native
NV 1ATÉ 2025
FastAPI
NV 1DESDE 2025
EQUIPADO
RUNTIME E DADOS4
PostgreSQL
NV 1DESDE 2018
Node.js
NV 3DESDE 2020
GraphQL
NV 1ATÉ 2025
Contentful
NV 1DESDE 2025
EQUIPADO
TESTES E FERRAMENTAS6
Cypress
NV 1DESDE 2021
Playwright
NV 3DESDE 2022
EQUIPADO
Storybook
NV 2DESDE 2022
Jest
NV 4DESDE 2022
Vite
NV 2DESDE 2022
EQUIPADO
Vitest
NV 0DESDE 2025
LINGUAGENS3
JavaScript
NV 6DESDE 2018
EQUIPADO
TypeScript
NV 5DESDE 2020
EQUIPADO
Python
NV 1DESDE 2025
EQUIPADO
LENDÁRIO · TODAS AS EQUIPES
RARO · DUAS OU MAIS
COMUM · UMA
BÔNUS · CAIXA DE FERRAMENTAS
07JOGADOR 2
Jogador 2,
aperte start.
Me conte sobre sua equipe, seu produto ou o problema que você quer resolver.