O que você é sem IA?
Engraçado como o mundo da tecnologia é. Recentemente me deparei com um vídeo no Instagram em que estava sendo feita uma brincadeira na qual se passava uma "daily". Uma daily, pra quem não sabe, é um rito em um projeto em que a ideia é relatar rapidamente o que foi feito e todos se alinharem sobre as atividades futuras. Nesta daily do vídeo em específico, existia um scrum master (??), um líder técnico, um dev (claramente júnior) e outra pessoa que não consegui identificar. Obviamente, não vou fazer uma crítica à pessoa do vídeo, muito menos ser chato em relação à temática da daily. A ideia do vídeo foi captada aqui (🤣🤣), mas acho importante falar algo sério sobre a situação engraçada.
No vídeo, o dev júnior precisava fazer uma tarefa que era um sistema de autenticação ou algo assim. O que deu pra entender foi que o dev júnior não sabia fazer o sistema de autenticação, muito menos integrá-lo ao sistema em que eles estavam trabalhando. Quando ele foi chamado na daily, ele APENAS disse que fez, e fez com o Claude. HAHA, foi engraçado. Mas sabe o que mais ele disse? Foi dito que "JÁ está em prod". 🫠🫠🫠🫠🫠
Ok. VAMOS LÁ. Vou primeiro PONTUAR sobre a resposta do dev. Falar que o CLAUDE que fez é sacanagem. Quer dizer, você nem olhou? Outra coisa, se fosse eu no caso, eu teria dito que "fiz com IA", porque passar por essa vergonha na REUNIÃO NÃO DÁ HAHA. Agora, sobre quem eu acho que era o líder técnico. Esse fez questionamentos sobre tokens, JWT, scheduler etc... Ah, tá de sacanagem? Minha resposta seria: "O que TÁ NA especificação".
Bom. Deixa eu explicar...
De quem você acha que é a culpa disso tudo num projeto real? VAMOS AO breakdown.
O dev e o mestre
"Se o mestre vê seu discípulo executando de maneira errada algo que não lhe foi explicado, a culpa está em quem deixou a loucura acontecer."
Na minha carreira, o que mais vejo é desenvolvedor fazendo merda com IA. MAS também vejo o oposto. Tem muita coisa boa saindo aí também. Se vocês notarem, quando coisa boa sai, é porque teve um processo, e não um devaneio singular. Acontece em grandes famílias, mas, antes de julgar o dev que ligou o Claude e codou tudo na loucura, e nem sabe o que tá lá, temos que nos perguntar: como esse dev fez tudo isso sem ninguém saber? Se você tem que perguntar qual "estratégia foi usada", é porque você também não cuidou para que essa pergunta não precisasse ser feita.
Tudo isso poderia ter sido evitado se o líder técnico tivesse feito seu trabalho, refinando a tarefa, seja gerando um plano ou usando specs pra travar os requisitos da melhor maneira possível. Pode ser estranho hoje, mas o máximo que deveríamos ver são sinais de que a tarefa foi feita. Por isso, hoje, processos como testes unitários e provas visuais de mudanças em PRs são essenciais, na minha opinião. É muito difícil hoje acompanhar o ritmo com que a IA escreve e entrega código, mas com certeza existem gates pra garantir o que tá sendo feito e como.
O que sugiro ao líder técnico é revisar as estratégias que garantem que as IAs de seus devs obedeçam aos requisitos. E, principalmente, garantir você mesmo a qualidade do que os outros entregam antes de chegar à daily.
Ahh, tem um ponto extra que vale a pena comentar. O dev falou que já tá em prod, né?? Baita erro isso também do líder.
Eu não sou especialista em GitHub, mas sei que, no Bitbucket, você consegue configurar regras no lado do servidor que impeçam que atrocidades, como comitar direto em prod, aconteçam. Deus me livre, o vídeo mete o pau no dev, mas o processo também é bem cabuloso, não? Hahaha.
Obviamente, não tenho problemas com a pessoa do vídeo, era só uma história, eu sei, tinha que ser engraçado, mas, levando pro cenário real, meu Deus, espero que não tenha líderes técnicos assim hahahaha.
1. Especificação clara antes de codar
Defina requisitos, decisões de arquitetura e critérios de aceite antes de pedir código à IA. Se a implementação não consegue ser comparada com uma especificação, a revisão vira adivinhação.

2. Validação automática não é opcional
Todo PR deveria passar por testes, lint e análises de segurança. Para autenticação, inclua também testes de autorização, tratamento de tokens e cenários de falha.

3. Proteja a branch e exija revisão
Bloqueie alterações diretas nas branches protegidas e exija aprovação de PR e verificações obrigatórias. Código gerado por IA continua sendo responsabilidade de quem o entrega.

4. Produção precisa de um gate próprio
Não basta proteger a branch: restrinja quem pode executar deploys, separe ambientes e use aprovações e credenciais controladas no pipeline. Assim, "já tá em prod" deixa de ser uma surpresa.
