Ele roda em cada push, devolve feedback em menos de dez minutos, e bloqueia o merge na falha. Ordene os estágios do mais barato ao mais caro: lint e checagem de tipos, testes unitários, depois testes de integração contra dependências reais em containers, depois um artefato de build que você promove em vez de reconstruir por ambiente. Mantenha determinístico, coloque testes instáveis em quarentena em vez de repetir às cegas, e deixe as mesmas checagens rodáveis localmente.
Por que os entrevistadores perguntam isso
Os entrevistadores querem saber se você trata o CI como rede de segurança ou formalidade. Os sinais são velocidade, porque um pipeline que ninguém espera acaba sendo contornado, ordenação de estágios para falhar rápido, construir o artefato uma vez e promover, e uma posição real sobre testes instáveis. Dizer que o CI deveria ser reproduzível localmente mostra que você já sentiu a dor de um pipeline verde e um laptop vermelho.
Como estruturar sua resposta
- Comece pelo ciclo de feedback e um orçamento de tempo.
- Ordene os estágios do mais barato ao mais caro.
- Construa uma vez e promova o mesmo artefato.
- Declare uma política explícita sobre testes instáveis.
Exemplo de resposta
A primeira propriedade é velocidade, porque um pipeline que leva quarenta minutos é um que as pessoas contornam. Eu quero lint e checagem de tipos falhando em menos de um minuto, testes unitários em poucos, e o conjunto inteiro em menos de dez. Então os estágios vão do mais barato primeiro: checagens estáticas, testes unitários, depois testes de integração contra Postgres e Redis reais em containers em vez de mocks, porque os bugs com que eu me importo vivem na fronteira. Depois ele constrói um artefato, uma imagem de container marcada com o sha do commit, e todo ambiente depois disso faz deploy daquela imagem exata. Reconstruir por ambiente significa que a coisa que você testou não é a coisa que você entregou. Sobre testes instáveis eu sou rígido: um retry automático é um jeito de esconder uma corrida real, então um teste instável vai para a quarentena e alguém assume corrigir ele naquela semana. E eu quero os mesmos comandos rodáveis localmente, geralmente atrás de um makefile, porque depurar empurrando commits para ver o que o CI diz é um jeito miserável de passar a tarde.
Vai encarar essa entrevista em breve? O GhostPilot escuta a sua chamada ao vivo, identifica a pergunta no instante em que ela é feita e coloca uma resposta estruturada na sua tela em tempo real. Teste na sua próxima entrevista simulada ou pegue um Session Pass de $29, sem assinatura, para a hora da verdade.
Veja como funcionaPerguntas de acompanhamento que você pode esperar
- Como você aceleraria uma suíte que leva trinta minutos?
- Que checagens você rodaria na main mas não nos pull requests?
- Como você gerencia segredos no CI?
Mais perguntas para Engenheiro de Software
Seu entrevistador vai fazer a própria versão desta. Cole a descrição real da vaga no Question Predictor gratuito e receba as 20 perguntas que essa vaga tem mais chance de fazer, com o que cada uma está de fato sondando.
Prever minhas perguntas