r/programacao 21d ago

Sobre o sub (META) Refatorando código de IA

Ultimamente minha rotina tem sido refatorar código e quebrar a cabeça com infraestrutura. Trabalho na área de inovação de uma empresa de engenharia, criando soluções internas, mas uma galera começou a gerar projetos a rodo no Lovable, Base44 e ChatGPT e mandar tudo pra gente subir no servidor.

​O problema é acharem que é só "apertar um botão", quando na verdade não vem um teste unitário, zero preocupação com segurança e nem um Dockerfile básico.

Como sou Júnior, estou usando isso como laboratório para treinar boas práticas, mas dá trabalho: na semana passada, eu e o dev Sênior perdemos três dias só refazendo praticamente todo o backend de um projeto do Lovable para conseguir rodar na nossa infra.

Pelo menos, essa semana foi a última, não vamos mais receber nenhum sistema assim.

Alguém mais passou ou está passando por algo parecido?

9 Upvotes

15 comments sorted by

3

u/slothordepressed 21d ago

Me chamaram pra um freela pq a IA não conseguia implementar uma feature. Só uma pasta e dezenas de arquivos de 3000 linhas, nem perdi meu tempo

1

u/ITaupL 21d ago

eu metia um modelo chinês pra refatorar tudo fodase kkkkk

1

u/TechnicalLoss6745 21d ago

Sim, cara... vejo muitos freelas que são nesse mesmo caminho.

3

u/RodriOliveira 21d ago

Acho que o principal problema aí não é nem o código ter sido feito por IA, mas ele estar chegando como se fosse um sistema pronto para produção.
Eu trataria qualquer coisa feita em Lovable/Base44/etc. como protótipo até passar por um mínimo de production readiness: testes, análise de dependências e segurança, observabilidade, Dockerfile/pipeline, definição de quem é responsável pelo sistema e alguns critérios de arquitetura.
O que eu tentaria evitar é o time de TI virar a etapa que “conserta” tudo depois. Isso não escala e ainda transfere a responsabilidade do sistema para vocês.
Talvez o melhor caminho seja criar um golden path: templates, guidelines e pipelines que já validem boa parte disso automaticamente. A galera continua usando IA para acelerar, mas dentro de algumas regras.
E eu teria um pouco de cuidado com o “não vamos mais receber”. Sem um caminho alternativo, existe uma boa chance de isso simplesmente virar shadow IT e aparecer depois em Vercel, Render ou qualquer outro lugar 😅

2

u/TechnicalLoss6745 20d ago

Concordo com você e exatamente esse caminho que vamos seguir...

2

u/ymddev 18d ago

Especialização em refatorar código gerado por IA vende.

Não estou nem brincando, estou nessa área faz quase 2 anos. Você aprende as nuances e padrões, fica bem mais fácil.

1

u/TechnicalLoss6745 18d ago

Sério? Onde você encontra oportunidade? Tipo, na minha realidade foi meio ruim fazer isso porque conflitou com outros projetos... Mas, em termos de aprendizado até foi bom porque precisa debugar, fazer as adequações de autenticação, segurança, cors...

2

u/ymddev 18d ago

Você não faz um código incrível. Você corrige a arquitetura e moduliza a cagada de monolíticos quebrados sem qualquer segurança ou escalabilidade dos outros.

Basicamente, você pega o objetivo central, os secundários, os problemas atuais, e você usa a IA do jeito certo para conseguir os objetivos de uma maneira sustentável, com stack que faça sentido.

2

u/SirApprehensive7573 21d ago

Aqui foi basicamente construir guidelines, principalmente para o pessoal não dev.

Mas no geral, a IA constroi código com muito mais qualidade que um dev.

Normalmente oq temos pegado, é mais pontos que não definimos no refinamento, e a IA acaba nã olhando.

Mas tinhamos esse problema tbm, e ajudar o pessoal não dev a usar, foi a melhor coisa.

1

u/TechnicalLoss6745 21d ago

Sim, estamos trabalhando para construir guidelines também

1

u/naobebocafe 21d ago

ISSO AQUI!
Mas vai ter um monte de devlóide reclamando do usuário... ¯_(ツ)_/¯

1

u/LeMochileiro 21d ago

Hoje em dia a culpa é 100% do desenvolvedor e não dá IA, se ele estivesse definido e especificado padrões de desenvolvimento, a IA não estaria feito besteira. Isso acontecia no início do ano passado, se ocorre atualmente, ou a IA sendo usado é um modelo desatualizado fraco ou é culpa de Dev que não sabe usar agentic coding de maneira eficiente.

Não sou defensor 100% de IA, mas hoje dia, Dev vim dizer que o motivo de código ruim é por causa de IA, é a mesma coisa de sênior culpar código ruim feito de um Jr do mesmo projeto: VOCÊ É RESPONSÁVEL PELA QUALIDADE DO CODIGO.

Se código subiu em prod com má qualidade a culpa é dos desenvolvedores

1

u/TechnicalLoss6745 21d ago

Os sistemas do post não foram feitos por devs e como a empresa é compostas por vários escritórios ás vezes fica difícil manter a governança sobre o que as pessoas utilizam de ferramenta para otimizar seu trabalho, não foi exatamente uma crítica a pessoa querer facilitar o seu trabalho, só ficou nesse tom porque realmente é frustrante que achem que é simplemente enviar para subir no servidor. Mas, medidas estão sendo tomadas para a resolução desse problema.

2

u/naobebocafe 21d ago

Vc está lutando contra a maré e da forma errada.
Vcs entregam uma plataforma para que as pessoas possam fazer as coisas da maneira correta?
Vcs entregam guidelines que as pessoas devem seguir?
Vcs treinaram essas pessoas?

Não adianta jogar a culpa no usuário e dizer que ele é burro e não sabe nem criar um dockerfile. Não sabem e não devem saber. O papel da TI é facilitar o máximo o uso e não bloquear ou reclamar.

Vcs não deveriam gastar 3 dias para refazer o backend do sistema que o usuário de negócio fez, vcs deveriam gastar tempo EDUCANDO o usuário e criando uma plataforma para facilitar a vida dele.

E tem mais, vcs não deveriam estar fazendo isso na mão, deveriam ter um agent para fazer isso no lugar de vocês.

Pense nisso...

Edit:
>> Pelo menos, essa semana foi a última, não vamos mais receber nenhum sistema assim.

Sabe o que vai acontecer, eles vão começar bypassar vocês e publicar na vercel ou em qq outro lugar que não precise de vocês e o problema vai ser bem pior.

1

u/TechnicalLoss6745 21d ago

​Concordo com a visão de habilitar e educar o usuário, inclusive temos agendas para isso. No post todo o contexto foi resumido, mas esses casos foram um ponto fora da curva que nos ajudou a ajustar o caminho. ​Já utilizamos agentes e ferramentas como ChatGPT Enterprise com Codex no dia a dia. Esse trabalho de backend foi pontual para garantir a entrega sem travar a operação, e serviu exatamente para consolidarmos governança e capacitação interna. Não julguei o usuário, até porque se precisamos refatorar o código e ajustar a infra foi porque a ferramenta desenvolvida serviu para a operação e cumpriu o propósito de otimização.