java junior: como entrar de verdade no brasil
Procurar “desenvolvedor Java junior” no Brasil rende duas reações opostas. A boa: Java é a stack que mais abre vaga de backend no país. Banco, fintech, seguradora, bolsa, governo e varejo rodam sistema crítico em Java com Spring, e todo esse mundo precisa de junior. A ruim: justamente porque tem muita vaga, tem muita gente aplicando, e a triagem é dura. Quem manda currículo genérico e GitHub vazio some no meio de duzentos candidatos.
O problema maior costuma ser outro. Quando você abre a vaga, o título diz “Java junior” e a descrição pede Spring Boot, JPA, SQL, mensageria, microserviços e nuvem. Parece que você precisa virar sênior antes da primeira vaga. Não precisa. A descrição é lista de desejos, não pré-requisito fechado. Quem entende isso para de tentar aprender tudo de uma vez e começa a mirar no que de fato abre porta de Java junior no Brasil.
Este texto separa porteira real de enfeite de anúncio. Antes de acumular curso, vale saber qual stack a empresa pede de verdade, qual caminho de estudo fecha essa vaga e como se destacar quando todo mundo está aplicando pra mesma posição. Para ver o mercado em movimento, abra as vagas de Java remoto no Brasil e leia o corpo do anúncio, não só o título.
primeiro: o que “desenvolvedor Java junior” faz de verdade
Esquece a imagem de “passar o dia escrevendo classe abstrata”. Quem entra como dev Java junior num time brasileiro de backend costuma fazer isto:
- pegar um ticket, abrir um endpoint ou serviço que já existe em Spring e adicionar um comportamento;
- mapear entidade com JPA, escrever consulta e ajustar relacionamento que o log reclamou;
- escrever teste com JUnit e Mockito antes ou depois do código, conforme o time;
- abrir pull request pequeno, responder code review por escrito e corrigir o que o reviewer pediu;
- investigar bug em produção com a ajuda do log, do trace e de alguém mais velho do time.
Framework é ferramenta pra entregar funcionalidade, não ornamentação. O sênior do time não te paga para decorar padrão de projeto; te paga para resolver um pedaço pequeno do problema sem quebrar o resto. Por isso o cargo premia quem escreve código legível, faz teste e pergunta no momento certo — bem mais do que quem acumula certificação.
A confusão comum é achar que “Java junior” é só o backend. Na maioria das vagas brasileiras é. Mas o rótulo também aparece em estágio de QA automático com Java + Selenium, em suporte técnico de sistema legado e, mais raro, em Android (onde Kotlin já tomou a frente). Antes de aplicar, confira no corpo da vaga se o trabalho é escrever backend Spring ou se é outra coisa com nome de Java.
a stack que aparece em quase toda vaga de Java junior
Abra dez anúncios de “Java junior” no Brasil e você vai enxergar um padrão. Não são dez ferramentas diferentes; é o mesmo conjunto, com pequena variação.
Java core. Orientação a objeto, Collection, Stream, Optional, tratamento de exceção, generics e o básico de multi-thread. É a base que separa quem entende Spring de quem só copia @Autowired.
Spring Boot. A vaga de backend brasileira vem com Spring. Injeção de dependência, REST controller, Spring Data JPA, validação e tratamento de exceção com @ControllerAdvice. Sem Spring, o portfólio fica difícil de defender num time que usa Spring.
JPA / Hibernate. Entidade, repositório, relacionamento, JPQL e o problema clássico de N+1. É onde o junior mais tropeça em entrevista e em código real.
SQL. PostgreSQL ou MySQL, JOIN, índice e modelo relacional na mão — não só o que o ORM gera. Quem só sabe save e findById trava na primeira consulta de relatório.
Ferramenta de time. Git, pull request, code review e teste com JUnit 5 e Mockito. Mais importante do que framework específico.
Build e noção de deploy. Maven ou Gradle, e Docker simples pra rodar banco local.
O que costuma não aparecer na vaga de junior de verdade: Kafka avançado, Kubernetes, arquitetura hexagonal, design pattern decorativo, mensageria em grande escala. Se a vaga de “Java junior” pede cinco anos e tudo isso, ela não é junior; pule. O guia de vaga fake junior: como identificar ajuda a separar rótulo inflado de oportunidade real.
o caminho de aprendizado (com timeline honesta)
A armadilha clássica é pular a base direto pro framework. Quem estuda Spring sem entender Java core termina conseguindo rodar um tutorial e sem saber explicar o que @Autowired faz. Estude em camadas, numa ordem que fecha vaga.
Mês 1 — Java core. Variável, controle de fluxo, orientação a objeto (classe, interface, herança, polimorfismo), Collection, Stream, Optional, exceção e generics. Faça exercício pequeno todo dia; não passe pra Spring enquanto não souber explicar o que é uma interface.
Mês 2 — SQL e Git. Banco relacional na mão: SELECT, JOIN, GROUP BY, subconsulta e modelo de tabela. Em paralelo, Git de verdade: branch, commit, merge, pull request. São duas skills que aparecem em toda vaga e que curso de Java costuma ignorar.
Mês 3 — Spring Boot + JPA. Agora sim. Sobe uma API REST, conecta no banco com Spring Data JPA, escreve entidade e repositório, trata exceção. É aqui que a base de Java core e SQL se junta.
Mês 4 — Teste e projeto. JUnit 5, Mockito, teste de unidade e de integração. Comece o primeiro projeto de portfólio agora, não depois. Código com teste vale muito mais do que código bonito sem teste.
Mês 5 a 6 — Portfólio e candidatura. Termine 3 projetos, organize o GitHub, monte o currículo e comece a aplicar com método. A candidatura boa começa antes do botão de aplicar — leia como aplicar para vaga tech nas primeiras 48h.
É um caminho de 4 a 6 meses pra quem estuda com regularidade, não fim de semana soltos. Antes de começar, vale conferir se Java é mesmo a stack certa pra você com o guia de como escolher stack para a primeira vaga tech.
portfólio Java que abre vaga junior (e o que quebra a credibilidade)
Recrutador e pessoa técnica olham três coisas: código que roda, teste que prova e README que explica decisão. Se falta um dos três, o projeto parece exercício de curso. Três especificações que funcionam:
- API REST com Spring Boot, teste e migration. Domínio pequeno (pedido, cliente, produto), endpoints de criar/listar/buscar, tratamento de erro com
@ControllerAdvice, migration com Flyway ou Liquibase e teste de integração subindo banco em memória. Mostre que você pensa em erro, versão de schema e teste — não só em “funciona na minha máquina”. - Um serviço Spring onde você conserta um N+1 de propósito. Crie o problema, mostre o log de query repetida, resolva com
JOIN FETCHou@EntityGraphe escreva no README o antes e depois. Esse é o projeto que separa quem copiou tutorial de quem entendeu JPA. - Um job de importação em lote. Leia CSV, valide campo, persista no banco e gere relatório dos registros que falharam. Parece trabalho real de junior em sistema corporativo — e é o tipo de entrega que quase ninguém coloca no portfólio.
O que quebra credibilidade: clone de todo-list sem teste; “API de produtos” sem README, sem tratamento de erro e sem migration; repositório com master cheio de commit final, commit final mesmo e agora vai. O guia de portfólio com 3 projetos certos aprofunda a estrutura de README e entrega, e o de GitHub que recrutador olha vs GitHub que dev olha mostra o que faz um repositório parecer vivo. Para transformar isso em página objetiva, leia primeiro CV tech sem experiência.
o teste técnico de Java junior de verdade
O teste costuma ter três formatos: take-home (implementar endpoint ou serviço), live coding (consulta, Stream ou lógica ao vivo) e case de sistema (desenhar modelo e justificar). O erro mais comum é tentar entregar tudo e capengar na metade. O acerto é escopo pequeno, código que roda e limite honesto.
O que costuma cair de Java específico:
- implementar um endpoint REST que cria e busca recurso;
- mapear entidade JPA com relacionamento e escrever uma consulta;
- lógica com
Stream,CollectioneOptional; - escrever teste de unidade com JUnit e Mockito;
- explicar, em voz alta, o que é injeção de dependência, o que é o problema N+1, a diferença entre exceção checked e unchecked e o que
@Transactionalfaz.
Para o live, leia entrevista técnica junior. Para o take-home e o case, o roteiro de teste técnico para junior vale ouro — o conselho de limitar escopo antes de começar pesa dobrado em Java, onde é fácil se perder em camada. Depois do teste, o debrief de teste técnico junior ajuda a transformar resultado em ajuste.
onde achar vaga real (e como ler o título)
A lista de vagas de Java remoto no Brasil sai do filtro Java + remoto e atualiza todo dia. Empresas que costumam ter pipeline de junior em Java: bancos e fintech (Itaú, Bradesco, BTG Pactual, Nubank, Banco Inter, B3), integradora e consultoria (Stefanini, CI&T, Accenture, IBM, GFT, Cognizant, Encora), governo (Serpro) e varejo e ERP (TOTVS). Quando a vaga aparecer, leia o corpo:
- se pede cinco anos no título “junior”, não é junior de verdade;
- se a descrição inteira é sobre Java 8 legado sem plano de migração, pergunte na entrevista qual versão o time usa — trabalhar só com Java antigo te trava;
- se o anúncio mistura “Java junior” com “pleno/sênior”, costuma ser triagem inflada.
Monte rotina de candidatura com o guia de rotina semanal de fontes para vaga junior, filtre remoto real com como filtrar vaga remota junior e, se estiver entre estágio, trainee e vaga junior, leia trainee, estágio ou vaga junior pra decidir a porta certa.
Java vale como primeira stack?
Vale, com um porém honesto. Java abre mais vaga de backend no Brasil do que qualquer outra stack — mas por isso mesmo atrai mais candidato. A vantagem é volume; o custo é competição. Para se destacar, o caminho não é “aprender mais coisa”, é “aprender a base certa e mostrar portfólio com teste e decisão”.
Dois pontos de atenção real. Primeiro, a armadilha do Java legado: muito projeto brasileiro ainda roda Java 8 ou 11 e está subindo pra 17/21. Antes de aceitar, pergunte a versão; passar dois anos só em Java 8 antigo te trava no mercado. Segundo, a escolha entre Java e Kotlin: no backend corporativo Java segue dominando e tem mais vaga de junior; em Android e em parte das fintech, Kotlin cresceu. Para primeira vaga, Java abre mais porta; Kotlin entra depois como diferencial.
Se você ainda não fechou a stack, leia como escolher stack para a primeira vaga tech. Para comparar com outras portas de backend, abra vagas de back-end remoto, JavaScript remoto e vagas de dev junior remoto.
salário: o que esperar na entrada
Faixa de entrada de dev Java junior varia bastante por contrato (CLT vs PJ), porte da empresa e região, e costuma subir rápido quando você domina Spring e vira a pessoa do serviço no time. Os números mudam e dependem de negociação — por isso o melhor movimento é ler salário junior no Brasil para o contexto de contrato e região, e pretensão salarial para vaga junior antes de responder faixa num processo. Para entender a diferença entre CLT, PJ e estágio antes de aceitar, leia CLT vs PJ vs estágio.
se você vem de outra área
Quem vem de engenharia, exatas, administração ou suporte de sistema leva vantagem real em Java backend: já pensou em processo, regra de negócio e sistema. Muita gente entra como dev Java junior vinda dessas áreas sem curso tech formal. O guia de transição de carreira para tech mostra como transformar esse histórico em evidência em vez de desculpa.
o resumo prático
- Entenda o cargo: dev Java junior entrega feature em Spring, escreve teste, abre PR pequeno e responde code review.
- Estude na ordem: Java core primeiro, depois SQL e Git, depois Spring + JPA, depois teste.
- Faça 3 projetos com código que roda, teste que prova e README que explica decisão.
- Antes de aceitar, pergunte a versão do Java do time — fuja de Java 8 sem plano de saída.
- Leia o corpo da vaga, não só o título; pule anúncio que pede cinco anos no “junior”.
Java não é a stack mais nova, nem a mais charmosa. É a que mais paga conta de backend no Brasil — e por isso continua sendo a porta mais larga pra quem quer entrar como dev. A vaga existe em quantidade; o que falta pra muita gente é a base certa e um portfólio que se explique sozinho.