Vistoria
Vistoria de imóveis guiada por IA multimodal, do registro por ambiente ao relatório em PDF.
Java 21 · Spring Boot · Spring Security · JPA · Flyway
Vinícius Oliveira
São Carlos, SP · remoto ou híbrido (SP)
aberto a oportunidades
Sou fisioterapeuta formado pela UFSCar e hoje me dedico ao desenvolvimento de software. Construo APIs em Java e Spring Boot com cuidado de quem aprendeu a examinar antes de tratar, e estou estudando front-end para entregar produtos inteiros.
@RestController
@RequestMapping("/api/perfil")
class PerfilController {
@GetMapping
Perfil perfil() {
return new Perfil(
"Vinícius Oliveira",
"Engenheiro de Software",
List.of("Java", "Spring", "SQL")
);
}
}agora no GitHub: último push em portfolio , 16 repositórios públicos.
a notícia mais recente
Com o Vistoria, um app que guia a vistoria de um imóvel e usa IA para analisar as fotos, meu time ficou entre os finalistas. Agora estamos na disputa por uma viagem aos Estados Unidos.
O resultado final sai nas próximas semanas.
estamos aqui, falta saber onde ↓
(01) Sobre
Me formei em Fisioterapia na UFSCar, uma universidade federal exigente, e no caminho me aproximei da tecnologia, onde encontrei mais afinidade. Hoje curso Engenharia de Software e uma pós em arquitetura Java na FIAP.
o que eu trouxe da saúde para a engenharia:
Raciocínio clínico
→Depuração com método
Avaliar, levantar hipóteses, intervir e reavaliar. É o mesmo ciclo que uso para isolar um bug.
Prática baseada em evidências
→Decisão sustentada por teste
Nada de achismo: testes automatizados, cobertura e documentação provam que a solução funciona.
Ética e responsabilidade
→Cuidado com dados e erros
Na saúde, um erro afeta uma pessoa real. Trago esse peso para privacidade, validação e tratamento de falhas.
Escuta e empatia
→Foco em quem usa
Entender a queixa antes de propor a conduta. No software: entender o usuário antes de escrever código.
(02) Trajetória
Fisioterapia na UFSCar, ADS na PUCPR, a transferência para Engenharia de Software na FIAP e uma pós em arquitetura Java. Dá para filtrar por branch.
Estudando o curso.dev (Filipe Deschamps) para levar ao front-end a mesma disciplina de engenharia do back-end.
Equipe multidisciplinar de 3 pessoas, app com IA no ar e uma viagem aos EUA em disputa. O resultado sai em breve.
Workshop da Tech Leads Club: desenvolvimento orientado a especificação, empresas IA-first e fluxo com agentes.
Depois de cursar ADS na PUCPR, transferi para o bacharelado em Engenharia de Software da FIAP, com conclusão prevista em 2028.
Docker, Spring, JPA, TDD, Clean Architecture, gRPC, GraphQL, segurança e mensageria.
Primeira graduação em tecnologia: fundamentos, algoritmos e estruturas de dados.
Conclusão do bacharelado em Fisioterapia na UFSCar e decisão de seguir na engenharia de software.
Começo dos estudos de Java e orientação a objetos, ainda durante a graduação em saúde.
Formação em universidade federal: raciocínio clínico, prática baseada em evidências e trabalho multiprofissional.
(03) Agora
Minha base é Java e Spring. Para entregar uma funcionalidade inteira, do banco à tela, estou fazendo o curso.dev, do Filipe Deschamps.
já passei por
a seguir
(04) IA
Em setembro de 2026 fiz o Workshop Desenvolvimento Assistido por IA Avançado, da Tech Leads Club: dois dias de prática com desenvolvimento orientado a especificação e fluxo com agentes. Desde então, trabalho assim:
Escrevo antes de pedir
Escopo, critérios de aceite e decisões ficam registrados antes de qualquer código.
Quem decide é o teste
Lint, build, testes e revisão. Se não passa, não entra.
IA dentro do produto
No Vistoria, um modelo multimodal analisa as fotos do imóvel e explica cada achado.
(05) Projetos
O último commit de cada repositório é buscado no GitHub, então o que você vê aqui está sempre em dia.
Vistoria de imóveis guiada por IA multimodal, do registro por ambiente ao relatório em PDF.
Java 21 · Spring Boot · Spring Security · JPA · Flyway
API de gestão de pacientes, pedidos e catálogo de exames clínicos.
Java 21 · Spring Boot 4 · Spring Data JPA · PostgreSQL · Bean Validation
Conciliação de recebimentos Pix, identificação de divergências e fechamento de caixa.
Java 21 · Spring Boot · PostgreSQL · Clean Architecture · JUnit 5
Plataforma de gestão de restaurantes, desenvolvida em equipe no Tech Challenge da FIAP.
Java 21 · Spring Boot · MySQL · H2 · Flyway
(06) Código
Trechos reais do Medflow e do Pix Reconciliation, copiados de um commit fixo. Clique numa anotação para ver a linha correspondente, ou abra direto no GitHub.
@Version
@Column(name = "version", nullable = false)
private Long version;
protected ExamOrder() {
// Construtor usado pelo JPA para reconstruir registros do banco.
}
public ExamOrder(UUID patientId, String examCode, ExamPriority priority) {
validateData(patientId, examCode);
this.patientId = patientId;
this.examCode = examCode.trim();
if (priority == null) {
this.priority = ExamPriority.NORMAL;
} else {
this.priority = priority;
}
this.status = ExamStatus.RECEIVED;
Instant now = Instant.now();
this.createdAt = now;
this.updatedAt = now;
}por que fiz assim
(07) Certificados
Java e Spring, testes, arquitetura, dados e IA, por instituições como Vanderbilt, IBM, UC Davis e Michigan.
Building HTTP APIs with Spring
Vanderbilt University
2026
Desenvolvimento Assistido por IA Avançado
Tech Leads Club
set/2026
JUnit and Mockito Unit Testing for Java Developers
Packt
2026
Microsserviços: conceitos, padrões de projeto e prática (3 cursos)
Alura
2026
(08) Stack
Separei pelo que uso em projetos, pelo que tenho de base e pelo que ainda estou aprendendo.
Java 21, Spring Boot, Spring MVC, Spring Data JPA, Hibernate, Spring Security, Bean Validation, REST, Problem Details (RFC 9457), OpenAPI.
SQL, PostgreSQL, MySQL, H2, Flyway, Modelagem relacional, Transações e concorrência otimista.
JUnit 5, Mockito, MockMvc, JaCoCo, TDD, Code Review.
Clean Architecture, SOLID, Docker, Docker Compose, Git Flow, CI/CD, Microsserviços (estudo).
HTML, CSS, JavaScript, Node.js, React, Next.js, TypeScript.
(09) Contato
Estou buscando minha primeira oportunidade como engenheiro de software, remoto ou híbrido em São Paulo. Se tiver uma vaga ou só quiser trocar uma ideia, me chama.
ou, se preferir, explore pelo terminal: