Java Day SJP · IA aplicada
Java Day SJP

Como usar a IA para acelerar sua carreira de dev

Documentação, refinamento técnico, testes e agentes personalizados no dia a dia de quem desenvolve software.

Agenda

O que vamos ver hoje

  • 01. Como usar IA para gerar documentação
  • 02. Como usar IA para refinamento técnico
  • 03. Gerando cenários de teste e enxergando requisitos
  • 04. Potencializando resultados: agentes personalizados e steering files
  • 05. IA como assistente pessoal de carreira
Pergunta rápida

Quem já usa IA hoje?

Levante a mão 🙋

Pergunta rápida

Quem sabe como customizar o que a IA deve responder?

Instruções, agentes, contexto e steering files

01

Documentação com IA

Como transformar código em documentação viva, consistente e rápida de manter.

Documentação · Por quê

Por que usar IA para documentar?

  • Reduz o tempo gasto escrevendo documentação manualmente
  • Mantém padrão entre endpoints, times e squads
  • Ajuda a manter a documentação viva, junto do código
  • Serve de base para OpenAPI, READMEs e ADRs
Documentação · Exemplo

Documentando um endpoint

Prompt
Gere a documentação OpenAPI do endpoint POST /api/items do ItemController, seguindo os padrões definidos em docs/api/api-documentation-guidelines.md. Inclua request, response, status codes e um exemplo de payload.
Resultado gerado
@Operation(summary = "Cria um novo item",
    description = "Cria um item a partir de nome e descrição")
@ApiResponses({
  @ApiResponse(responseCode = "201",
      description = "Item criado com sucesso"),
  @ApiResponse(responseCode = "400",
      description = "Dados inválidos")
})
@PostMapping
public ResponseEntity<ItemResponse> create(
    @Valid @RequestBody CreateItemRequest request) { ... }
Documentação · Exemplo

Documentando um fluxo de negócio complexo

Prompt
Documente o fluxo de checkout do e-commerce, cobrindo validação de carrinho, cálculo de frete, reserva de estoque, autorização de pagamento e emissão do pedido. Liste as integrações envolvidas e os pontos de falha/retry esperados.
Resultado gerado
### Fluxo de Checkout
1. API Gateway recebe o pedido do carrinho.
2. CheckoutService valida itens e preços.
3. InventoryService reserva estoque
   (timeout 2s, retry 1x).
4. ShippingService calcula o frete
   (fallback: tabela padrão).
5. PaymentGateway autoriza o pagamento
   (idempotency key).
6. OrderService confirma o pedido e
   publica o evento OrderCreated.
7. Falha em qualquer etapa aciona
   compensação (padrão saga).
Documentação · Boas práticas

Como escrever bons prompts de documentação

  • Referencie arquivos e padrões já existentes (steering, AGENTS.md)
  • Peça exemplos de payload, status codes e casos de erro
  • Peça para seguir as convenções já definidas no projeto
  • A IA gera o rascunho — a revisão humana garante a precisão
02

Refinamento técnico com IA

Usando prompts direcionados para revisar decisões e reduzir riscos.

Refinamento · Por quê

IA como par técnico

  • Aponta riscos de acoplamento, duplicação e complexidade
  • Sugere alternativas mantendo a arquitetura definida
  • Acelera revisões de PR e discussões técnicas
  • Ajuda a validar decisões antes de irem para produção
Refinamento · Exemplo

Refinando uma integração entre sistemas

Prompt
Hoje o CheckoutService chama de forma síncrona o serviço de pagamento e o de estoque dentro do mesmo caso de uso. Analise riscos de acoplamento, escalabilidade e resiliência dessa integração e sugira um refinamento, mantendo a arquitetura hexagonal (portas e adapters).
Resposta da IA
  • Acoplamento forte: falha no PaymentGateway derruba o checkout inteiro
  • Sem isolamento de falhas entre camadas: risco de indisponibilidade em cascata
  • Sugestão: mover chamadas externas para adapters com circuit breaker
  • Sugestão: confirmar pedido de forma assíncrona via eventos, para escalar horizontalmente
  • Sugestão: camada anti-corrupção para isolar o domínio dos modelos externos
Refinamento · Exemplo

Direcionando uma decisão de arquitetura

Prompt
Avalie se a criação de Item deveria validar regras de negócio (nome obrigatório, tamanho mínimo) no domínio ou na camada de aplicação, considerando os princípios do AGENTS.md.
Resposta da IA
  • Regra pertence ao domínio: Item.newItem deve validar suas invariantes
  • Evita duplicação de validação em múltiplos casos de uso
  • Mantém o domínio rico, conforme diretriz de modelagem
Refinamento · Checklist

Direcionando melhor o refinamento

  • Peça para justificar a decisão com base nos padrões do projeto
  • Peça alternativas e trade-offs, não só "a correção"
  • Delimite o escopo: "sem quebrar contrato público", "sem alterar assinatura"
  • Combine com testes para validar o refinamento sugerido
03

Cenários de teste com IA

Enxergando requisitos escondidos no código através de testes.

Testes · Por quê

Requisitos implícitos viram testes

  • IA ajuda a enxergar cenários esquecidos
  • Evidencia requisitos implícitos no código
  • Gera casos felizes, negativos e de borda
  • Serve de base para TDD e para revisão de cobertura
Testes · Exemplo

Gerando cenários de teste

Prompt
Com base nas classes Item e ItemService, liste cenários de teste para criação e exclusão de item, cobrindo caso feliz, validação e erro de domínio, no formato deveXQuandoY.
Cenários gerados
  • deveCriarItemQuandoDadosValidos
  • deveLancarExcecaoQuandoNomeVazio
  • deveExcluirItemQuandoItemExiste
  • deveLancarItemNotFoundExceptionQuandoIdNaoExiste
  • deveRetornar400QuandoPayloadInvalido
Testes · Resultado

Do cenário ao teste implementado

Cenário
deveLancarItemNotFoundExceptionQuandoIdNaoExiste

Gere a implementação em JUnit 5 + Mockito + AssertJ.
Teste gerado
@Test
void deveLancarItemNotFoundExceptionQuandoIdNaoExiste() {
  UUID id = UUID.randomUUID();
  when(itemRepository.existsById(id))
      .thenReturn(false);

  assertThatThrownBy(() ->
      itemService.deleteById(id))
    .isInstanceOf(ItemNotFoundException.class);

  verify(itemRepository, never())
      .deleteById(id);
}
Testes · Boas práticas

Enxergando requisitos ocultos

  • Pergunte: "que validações estão implícitas neste método?"
  • Pergunte: "quais efeitos colaterais esse fluxo pode ter?"
  • Cenários de teste revelam regras de negócio não escritas
  • Testes gerados por IA são ponto de partida, não verdade absoluta
04

Elevando os resultados

Agentes personalizados, steering files e ADRs para consistência em escala.

Agentes personalizados

Fixando contexto e comportamento

  • Agentes fixam contexto e comportamento esperado
  • Reduzem a repetição de instruções em cada prompt
  • Garantem aderência contínua aos padrões do projeto
  • Podem ser reaproveitados por todo o time
Frontmatter do agente demo
AGENTS.md

Um documento único de referência

Conteúdo do AGENTS.md
  • Centraliza arquitetura, regras e convenções do repositório
  • Serve tanto para humanos quanto para a IA
  • Evita divergência entre sessões, times e squads diferentes
Steering Guide

Centralizando os padrões do projeto

  • Centraliza arquitetura, nomenclatura, testes e documentação
  • Ponto de entrada para novos membros do time
  • Referência única citada pelos agentes personalizados
Steering Guide do projeto
ADR Template

Registrando decisões arquiteturais

Template de ADR
  • Registra decisões importantes com contexto e consequências
  • Pode ser gerado e mantido com apoio da IA
  • Preserva o histórico do "por quê" das decisões tomadas
Resumo

O fluxo completo, ponta a ponta

1. ContextoSteering + AGENTS.md + ADRs
2. PromptDirecionado e específico
3. IA geraDoc, código ou teste
4. RevisãoHumana, sempre
5. AtualizaSteering, se preciso
Carreira com IA

IA como assistente pessoal de carreira

Os mesmos princípios de prompt e contexto usados no dia a dia técnico também aceleram decisões de carreira.

EntrevistaDevPrepara você para entrevistas técnicas a partir da vaga real
CodenceAjuda a estruturar conquistas e posicionamento de carreira
EntrevistaDev · 1 de 2

Preparação de entrevista guiada por IA

  • Você cola a descrição real da vaga e o contexto da entrevista
  • A IA identifica o perfil esperado: nível, stack e foco comportamental
  • Antes de simular, faz perguntas de calibração sobre você
EntrevistaDev recebendo a vaga e contexto da entrevista
EntrevistaDev · 2 de 2

Simulação direcionada ao cargo

EntrevistaDev analisando o perfil da vaga e calibrando a simulação
  • Aponta o que o entrevistador provavelmente vai avaliar (trade-offs, arquitetura defensável)
  • Conecta com referências reais, como Well-Architected Framework e Leadership Principles
  • Calibra a simulação perguntando nível atual, meta, ponto fraco e background
Codence · 1 de 3

Estruturando conquistas técnicas

  • Você descreve a entrega em linguagem natural, sem formatação
Codence recebendo o relato da entrega e responsabilidades do cargo
Codence · 2 de 3

Estruturando conquistas técnicas

  • A IA identifica o que é relevante para o seu cargo e nível atual
  • Transforma o relato bruto em contexto, contribuição e impacto
Continuação do relato com resultados da entrega
Codence · 3 de 3

Do relato ao brag document

Codence gerando o brag document estruturado
  • Gera um documento estruturado: contexto, contribuição e impacto
  • Conecta a entrega a métricas reais de negócio e engenharia
  • Pronto para ciclos de performance, portfólio e entrevistas
Comunidade

Você não precisa evoluir sozinho

EntrevistaDev e Codence fazem parte de uma comunidade dev de alto nível.

Quem está no evento ganha 50% de desconto no primeiro mês.

Me chama no LinkedIn para resgatar o cupom 🙂

Bônus

Você também pode usar IA pra criar apresentações

  • Documentei, passo a passo, como eu queria a palestra
  • Passei o conteúdo e a direção visual completa para a IA
  • Toda a construção — este site, este design — veio da IA
  • Direção clara e contexto o tempo todo: sem vibe coding
Desafio da semana

Crie um agente na IA que você mais usa — e dê contexto pra ela

"A IA não vai roubar seu emprego se você souber usar ela pra acelerar o potencial que você já tem."

01 / 00