Vibe coding vs. ingeniería asistida por IA: la diferencia que decide la calidad

Vibe coding acepta el código sin leerlo; la ingeniería asistida lo revisa, lo prueba y parte de una especificación. Qué cambia y cuándo usar cada una.

info Definición Rápida
Vibe coding es programar con IA aceptando el código sin revisarlo (la definición completa está en qué es vibe coding). La ingeniería asistida por IA usa las mismas herramientas dentro de un proceso con especificación, plan, revisión humana y pruebas. La diferencia no está en la herramienta, sino en lo que se hace antes y después de que la IA escribe.

¿Qué separa a una de la otra?

Ambas empiezan igual: una descripción en lenguaje natural y una IA que genera código. La diferencia aparece en tres momentos.

MomentoVibe codingIngeniería asistida por IA
Antes de codificarSe describe la idea y se pide que la IA la construyaSe escribe una especificación o un mini-PRD y se pide un plan antes de tocar código
Mientras se generaSe acepta el resultado si la pantalla se ve bienSe revisa cada cambio, se piden pruebas y se leen los diffs
DespuésSe publica si funciona en la demoSe prueba, se revisa la seguridad y se documenta qué se cambió

Addy Osmani, “Engineering Leader” en Google enfocado en IA y experiencia de desarrollo, lo plantea en su guía en línea Beyond Vibe Coding como un espectro: el desarrollo asistido por IA va desde el vibe coding simple hasta la ingeniería compleja y lista para producción. Define el vibe coding como un enfoque lúdico basado en prompts de alto nivel, y la ingeniería asistida como un enfoque más estructurado que suma la creatividad del vibe coding al rigor de las prácticas tradicionales de ingeniería (Osmani, Beyond Vibe Coding).

Simon Willison pone el corte en la revisión: para él, vibe coding es construir software con un LLM sin revisar el código que escribe, y no es lo mismo que escribir código con ayuda de un LLM. Su regla personal es no subir al repositorio nada que no pueda explicar a otra persona (Willison, 19 de marzo de 2025).

¿Por qué le importa a un diseñador?

Porque el vibe coding llega rápido hasta cierto punto y después se frena. Osmani lo llama “el problema del 70%”: las herramientas de IA permiten llegar a cerca del 70% de una app funcional sorprendentemente rápido, pero el 30% final, la parte que hace al software listo para producción, mantenible y robusto, se vuelve un ejercicio de rendimientos decrecientes (Osmani, diciembre de 2024). En ese ensayo también señala que el software de demo suele tener casos borde que hacen fallar la aplicación y que quien acepta el resultado de la IA sin cuestionarlo pasa por alto consideraciones de seguridad y rendimiento. Y en su guía advierte que el vibe coding es divertido hasta que empiezas a filtrar credenciales de bases de datos.

Para un diseñador, la consecuencia práctica es que el prototipo engaña. Una demo que se ve bien prueba que la idea funciona visualmente, no que el sistema sea seguro ni mantenible.

¿Qué hace un proceso de ingeniería asistida?

No hace falta ser programador, pero sí pedir cuatro cosas, que coinciden con las recomendaciones de la guía de Osmani:

  1. Especificación primero. Un SPEC o mini-PRD con objetivo, usuarios, reglas y casos que deben funcionar. Mira cómo escribir un PRD que un agente entienda.
  2. Plan antes de código. Pide a la IA el plan antes de la implementación (el modo plan sirve para eso) y apruébalo antes de que ejecute.
  3. Pruebas después de cada cambio. Pruebas automáticas para cada función generada y una revisión de seguridad. Mira seguridad básica en vibe coding.
  4. Una persona que aprueba. Osmani pide mantener supervisión humana como revisora y aprobadora final, y tratar el código generado como el de una persona desarrolladora junior: necesita revisión y pruebas antes de entrar.

¿Cuándo es suficiente el vibe coding?

Cuando el objetivo es aprender, explorar o validar una idea y nadie depende del resultado. Willison pide que los proyectos sean de bajo riesgo (“low stakes”). El límite aparece cuando hay datos reales de personas, dinero o una promesa de disponibilidad: ahí la ingeniería asistida deja de ser opcional. Una prueba rápida: si el código puede afectar a alguien que no eres tú, usa el segundo enfoque. Los criterios para parar están en cuándo no hacer vibe coding.

Ejemplo

Ejemplo ilustrativo: un equipo de producto construye un prototipo de reservas con vibe coding en un par de días. Para pasarlo a producción, redactan una especificación de una página (roles, estados de una reserva, qué pasa si se cancela), piden a la IA un plan de cambios por módulo y pasan cada cambio por pruebas de reservas duplicadas y de permisos. Una persona de ingeniería revisa las credenciales y la forma de guardar los datos antes del lanzamiento. El prototipo se hizo rápido; la versión publicada llevó mucho más tiempo, y ese tiempo es el último 30%.

¿Qué puedes hacer mañana?

  1. Antes de pedir una función, escribe tres líneas: qué problema resuelve, para quién y qué significa que funcione. Es el primer paso de cualquier especificación; sigue con spec-driven development.
  2. Pide un plan con la lista de archivos que van a cambiar y revísalo antes de aprobar. Si toca algo que no esperabas, pregunta por qué. Mira también iterar por prompts.
  3. Define una prueba mínima repetible: un flujo que el sistema debe completar sin errores. Vuelve a ejecutarla después de cada cambio.
  4. Antes de publicar, pide a una persona de ingeniería que revise accesos, secretos y datos personales, y anota lo que encontró para la siguiente versión.

Errores comunes

  • Creer que la velocidad del prototipo predice el tiempo de producción.
  • Saltarse la especificación porque “la IA entiende”.
  • Aprobar planes sin leerlos, solo para avanzar.
  • Confundir pruebas visuales con pruebas automáticas.
  • Dejar que la IA gestione secretos o credenciales sin revisión.
  • Usar la palabra “ingeniería” como etiqueta, sin cambiar el proceso.

Fuentes

Preguntas frecuentes

¿Cuál es la diferencia entre vibe coding e ingeniería asistida por IA?
En vibe coding la persona acepta el código que genera la IA sin leerlo. En ingeniería asistida por IA, la IA trabaja dentro de un proceso con especificación, plan, revisión y pruebas.
¿Qué es el problema del 70%?
Es la idea de Addy Osmani, en un ensayo de diciembre de 2024, de que las herramientas de IA llevan un proyecto rápido a cerca del 70% de una app funcional, pero el último 30%, lo que la hace lista para producción, mantenible y robusta, exige ingeniería real.
¿Un diseñador debe aprender ingeniería para usar IA?
No es obligatorio dominar la programación, pero sí entender qué es un plan, una prueba y una revisión, para pedirlos y detectar cuando faltan.
¿Cuándo es suficiente el vibe coding?
Para prototipos, exploración y aprendizaje, cuando nadie depende del resultado y los datos no son sensibles. En cuanto hay usuarios reales, la ingeniería asistida se vuelve necesaria.