1

7 Days of Code: Node.js, Gemini e desafios de backend

Um projeto backend em sete dias

O 7 Days of Code de Node.js organiza a prática em tarefas diárias enviadas por e-mail. Ao longo de sete dias, o projeto combina a construção de uma aplicação backend com a integração à API do Gemini para testar e validar prompts.

A inscrição é gratuita e aberta a quem não assina a Alura. A recomendação é reservar pelo menos uma hora por dia para ler o contexto, consultar os materiais extras e concluir o exercício. É necessário ter uma conta de e-mail para receber as tarefas.

Da configuração aos testes

O primeiro dia começa com a configuração básica da aplicação e os primeiros passos da integração com o Gemini. No segundo, entram a construção de um CRUD, a configuração do ambiente de testes e os primeiros testes unitários.

No terceiro dia, o trabalho continua no CRUD e os testes unitários passam a usar mocks. No quarto, o foco muda para testes de integração com a biblioteca Supertest, ampliando a verificação do comportamento da aplicação.

Organização e entrega do projeto

No quinto dia, os prompts de IA são categorizados por meio de categorias associadas a um template. O sexto é dedicado à documentação do projeto com Swagger, ajudando a registrar como a aplicação pode ser utilizada.

A etapa final propõe automatizar tarefas com GitHub Actions. Ao terminar a sequência, o participante terá desenvolvido projetos que pode incluir no portfólio e no GitHub.

Para quem quer praticar

A trilha é voltada a pessoas interessadas em tecnologia e programação que querem exercitar habilidades usadas no mercado. A cada dia, um e-mail traz o contexto, a tarefa e links para materiais extras. A proposta prioriza a prática diária em um projeto, com etapas que passam por integração com IA, operações CRUD, testes, documentação e automação.

Carregando publicação patrocinada...
1

A armadilha comum nesses projetos de integração é tratar o Gemini como uma função determinística de validação, quando na verdade ele introduz não-determinismo que quebra a lógica de testes unitários com mocks estáticos. Como os LLMs variam a saída mesmo com o mesmo prompt, o teste de integração com Supertest precisa lidar com a probabilidade de falha ou usar técnicas de avaliação probabilística em vez de assertions binárias. Como vocês lidam com a validação de prompts que podem retornar respostas ligeiramente diferentes em cada execução do pipeline?