Skip to content
Raphael Fernandes
24 de jul. de 20263 min de leituraPortuguês

O que sobrou depois de dois anos de IA no meu time

Um produto de vídeo ao vivo, um time de engenheiros e dois anos colocando IA no fluxo de trabalho. As práticas que aguentaram produção e as que não aguentaram.

Tínhamos quarenta feature flags para tirar de um fornecedor e colocar em outro. Trabalho tedioso, daqueles que consomem uma sprint e não ensinam nada a ninguém. Fiz uma na mão, com calma, e entreguei o diff mais as trinta e nove restantes para um agente.

Terminou numa tarde. Toda mudança dava para revisar, a maioria estava certa, e as quatro erradas erraram do mesmo jeito, o que facilitou encontrar. Quando alguém me pergunta se isso funciona, essa migração é a coisa mais concreta que tenho para mostrar.

Lidero o time por trás de uma sala de aula online. Aluno e tutor se encontram por vídeo na hora marcada, milhares de vezes por dia, e uma falha ali significa aula interrompida, não página recarregada. Essa restrição molda tudo o que vem abaixo. Não dá para subir um experimento e ver no que dá.

O formato de tarefa que agente dá conta

Delimitada, mecânica, verificável. A migração de flags era as três coisas. A troca da ferramenta de testes por outra também, e a atualização de um SDK no código inteiro.

Definir o escopo é a habilidade toda. “Migre estas quarenta flags, olhe esta aqui feita do jeito certo” rende uma tarde produtiva. “Organize nossas feature flags” rende um resultado confuso que dá mais trabalho revisar do que teria dado escrever. A diferença é se alguém já tomou todas as decisões de julgamento e sobrou só a digitação.

Revisão, não geração

O ganho de verdade apareceu na revisão.

Passamos código, nosso e gerado, por um agente com instrução adversarial antes de qualquer pessoa olhar. Ache a entrada que quebra isso. Aponte o caso que o autor não considerou. Pega uma classe específica de bug de borda por centavos, e quando o humano abre o diff os problemas óbvios já sumiram, então a atenção dele vai para desenho de solução.

A segunda coisa foi conhecimento interno. As decisões do time moravam em thread de Slack, que é onde decisão vai para morrer. Passamos a concentrar isso numa wiki que nossas ferramentas conseguem consultar, então quando alguém novo pergunta por que o gravador de sessão funciona daquele jeito, a resposta vem com link em vez de escavação. Ninguém confiou enquanto não teve citação. Depois disso, todo mundo passou a usar.

O que não sobrou

Autocomplete como evento principal. Sugestão linha a linha é boa e otimiza a parte do trabalho que nunca foi lenta. Digitar não era o gargalo.

Delegar sem escopo, sempre. Nossos fracassos têm o mesmo formato: tarefa ambígua, nenhuma etapa de verificação, e resultado confiante o bastante para parecer competente. Agente errado não avisa. Ele entrega algo plausível, e plausível custa mais para desmontar do que quebrado.

Comprar licença e anunciar no canal. Nada mudou no meu time enquanto o processo não mudou em volta das ferramentas. A adoção aconteceu quando “pronto para revisão” passou a incluir a passagem adversarial, e quando os tickets de migração começaram a ser escritos no formato que um agente consegue pegar.

O que eu digo para outros times

Escolha o modelo pelo tipo de tarefa. Modelo de ponta para arquitetura e depuração, mais barato para transformação em massa. Parece controle de custo e é. Também obriga você a dizer o que a tarefa envolve antes de entregar, e metade das vezes é aí que você percebe que ela estava mal definida.

Os times que colhem retorno acumulado não são os que escrevem os melhores prompts. São os que reorganizaram a metade chata do processo para uma máquina segurar, e gastaram a atenção liberada decidindo o que construir. Essa reorganização é mais lenta do que comprar assinatura, e é a única versão que eu vi durar.

Escrito porRaphael FernandesGerente de engenharia e consultor. Ajudo times a colocar produto de pé e a tirar trabalho de verdade da IA.
Começar uma conversa