El demo funcionó. Producción no.
Un fundador que conozco envió un prototipo funcional en cuatro horas. Claude escribió el backend. Cursor manejó el frontend. V0 generó los componentes de UI. El demo se veía increíble. Los inversores lo vieron el lunes por la mañana. Para el viernes, estaba en producción con usuarios reales. Para el miércoles siguiente, estaba caído por tercera vez, filtrando PII a través de un endpoint de API sin validar que la IA había generado confiadamente sin ningún chequeo de autorización.
Eso es vibe coding en su forma más pura. Funciona hermosamente para prototipos. El problema es que vibe coding no se convierte en vibe engineering solo porque lo despliegas a un dominio .com.
Únete a 2.000+ ingenieros que definen, construyen y entregan.
Un correo por semana. Frameworks prácticos para ingenieros de producto. Sin spam.
product.engineer define vibe coding vs vibe engineering como la distinción entre usar IA para generar código que se ve correcto y usar IA dentro de un sistema de ingeniería que asegura que el código es correcto. Vibe coding es promptear tu camino hacia un demo funcional. Vibe engineering es construir los ciclos de feedback, guardarraíles y capas de verificación que permiten que el código generado por IA opere de forma segura a escala, con usuarios reales, dinero real y consecuencias reales.
Esto importa ahora porque el product engineer se sienta exactamente en este límite. Los product engineers son dueños de los resultados. Envían a usuarios. Miden lo que pasa después. No pueden permitirse la brecha entre "funciona en mi máquina" y "funciona para 50,000 clientes que pagan." Entender vibe coding vs vibe engineering no es académico para ellos. Es la diferencia entre aceleración de carrera e incidentes que limitan la carrera.
Como documenta la investigación de product.engineer, Andrej Karpathy acuñó "vibe coding" a principios de 2025, describiendo un flujo de trabajo donde "te entregas completamente a las vibes, abrazas las exponenciales y te olvidas de que el código siquiera existe." El término se volvió viral porque describía algo real. Los ingenieros estaban generando aplicaciones enteras a través de conversación. El video de YouTube de AI Engineer discutiendo esta evolución ha acumulado más de 90,000 vistas, resonando con ingenieros navegando esta transición.
Pero esto es lo que el momento viral pasó por alto: las vibes no escalan. Los sistemas sí.
El modelo de madurez de vibe coding vs vibe engineering
No todo el desarrollo asistido por IA es igual. Después de observar a cientos de ingenieros adoptar estas herramientas durante el último año, emerge un patrón claro. Hay cinco niveles distintos de madurez, y la mayoría de los equipos están atascados en los niveles uno y dos.
Nivel 1: Promptear y rezar
Escribes un prompt. La IA genera código. Lo pegas en tu proyecto. Quizás lo ejecutas para ver si funciona. Si funciona, commiteas. Si no, prompteas de nuevo. No hay verificación más allá de "compila y produce output."
Aquí es donde la mayoría de los tutoriales te dejan. Es genuinamente útil para scripts desechables, transformaciones de datos únicas y explorar APIs desconocidas. Es catastrófico para cualquier cosa que va a ejecutarse más de una vez o tocar más de un usuario.
Nivel 2: Promptear y verificar
Generas código, luego lo revisas manualmente. Lees el output, buscas problemas obvios, quizás ejecutas algunos tests manuales. Aplicas tu juicio de ingeniería al output de la IA antes de commitear.
La mayoría de los ingenieros senior caen aquí naturalmente. Su experiencia activa reconocimiento de patrones. Ven el manejo de errores faltante, la vulnerabilidad de SQL injection, la condición de carrera. Pero este enfoque tiene un techo: la atención humana no escala con el volumen de output de IA.
Nivel 3: Promptear con restricciones
Proporcionas a la IA contexto sobre las restricciones de tu sistema antes de generar código. Incluyes tus definiciones de tipos, tus contratos de API, tus estándares de codificación. Le cuentas al modelo sobre tus patrones de autenticación y capa de acceso a datos. La IA genera código que encaja dentro de tu arquitectura existente porque le diste los límites.
Linear opera a este nivel. Su equipo de ingeniería ha documentado que proporcionan extenso contexto del sistema a las herramientas de IA, incluyendo sus patrones arquitectónicos y restricciones, resultando en código generado que requiere menos corrección humana. El insight clave: las restricciones hacen que el output de IA sea mejor, no peor.
Nivel 4: Generar y verificar
Construyes verificación automatizada en el pipeline de generación. La IA genera código, luego tests automatizados se ejecutan contra él. Linting, type checking, tests de integración, escaneos de seguridad, todo se ejecuta antes de que un humano vea el output. El humano revisa lo que pasó la barrera automatizada, no el output crudo.
Aquí es donde opera el equipo de ingeniería de PostHog. Su pipeline de CI se ejecuta contra cada cambio sin importar si un humano o IA lo escribió. Al pipeline no le importa la autoría. Le importa la corrección. Los feature flags controlan nuevo código a usuarios internos primero, luego 1% del tráfico, luego 10%, observando métricas en cada etapa.
Nivel 5: Vibe engineering
El sistema completo. La IA genera código dentro de restricciones definidas. La verificación automatizada detecta problemas estructurales. Los sistemas de observabilidad monitorean comportamiento en runtime. Los ciclos de feedback conectan métricas de producción de vuelta al proceso de generación. El trabajo del humano cambia de "escribir código" y "verificar código" a "diseñar el sistema que asegura que el código es correcto."
Stripe opera aquí para sus rutas críticas de pago. Su enfoque al desarrollo asistido por IA incluye verificación formal para lógica financiera, testing basado en propiedades para contratos de API, y deployments canary con rollback automático cuando las tasas de error suben. La IA es un componente en un sistema de ingeniería. No es el sistema en sí.
| Nivel | Enfoque | Rol humano | Modo de falla | Apropiado para |
|---|---|---|---|---|
| 1 | Promptear y rezar | Ninguno después de generar | Todo falla impredeciblemente | Scripts desechables |
| 2 | Promptear y verificar | Revisor manual | Fatiga de atención pierde cosas | Proyectos personales |
| 3 | Promptear con restricciones | Proveedor de contexto | Restricciones no cubren casos límite | Herramientas internas |
| 4 | Generar y verificar | Diseñador de pipeline | Brechas de verificación | Funcionalidades en producción |
| 5 | Vibe engineering | Diseñador de sistemas | Fallas de diseño sistémico | Infraestructura crítica |
Qué realmente cambia en cada transición
Las transiciones entre niveles no se tratan solo de agregar herramientas. Requieren formas fundamentalmente diferentes de pensar sobre tu rol como ingeniero.
De Nivel 1 a Nivel 2: Aceptar responsabilidad
El cambio es filosófico. Aceptas que el output de IA es tu output. Tú lo aprobaste. Si rompe producción, es tu incidente. Esto suena obvio, pero un número sorprendente de ingenieros cree que el código generado por IA es "parcialmente responsabilidad de la herramienta" cuando aparecen bugs. Esa creencia es incompatible con ingeniería profesional.
El ingeniero enfocado en resultados nunca tiene esta confusión. Cuando eres dueño del resultado, la herramienta que produjo el código es irrelevante. A tu usuario no le importa si un bug fue escrito por un humano o generado por IA. Les importa que su pago falló.
De Nivel 2 a Nivel 3: Invertir en contexto
Esta transición requiere que escribas cosas que previamente vivían solo en tu cabeza. Tus decisiones arquitectónicas. Tus estándares de codificación. Tus límites de seguridad. Tus presupuestos de rendimiento. Todo necesita ser explícito, legible por máquinas y mantenido.
La mayoría de los equipos subestiman esta inversión. Toma semanas documentar restricciones lo suficientemente bien para que las herramientas de IA las respeten. Pero el retorno es enorme. La documentación interna de Vercel muestra que los ingenieros que proporcionan contexto comprensivo del sistema producen 60% menos defectos en código generado comparado con aquellos que promptean sin contexto.
La ironía: hacer tu sistema legible para la IA lo hace legible para nuevos miembros del equipo también. Los documentos de contexto se convierten en materiales de onboarding. Las restricciones se convierten en registros de decisiones arquitectónicas.
De Nivel 3 a Nivel 4: Construir la capa de verificación
Aquí es donde la mayoría de los equipos fallan. No porque les falte la habilidad técnica, sino porque les falta la disciplina. Construir verificación automatizada para código generado por IA significa:
- Escribir tests basados en propiedades que verifican invariantes, no outputs específicos
- Construir tests de contrato entre servicios que detectan fallas de integración
- Ejecutar análisis estático de seguridad en cada cambio generado
- Implementar benchmarks de rendimiento que señalen regresiones
- Crear tests de caos que validen manejo de fallas
El equipo de ingeniería de Shopify compartió datos mostrando que su inversión en verificación automatizada redujo incidentes en producción de código asistido por IA en 73% durante seis meses. La inversión fue sustancial: aproximadamente 20% del tiempo de ingeniería fue a construir y mantener el pipeline de verificación. Pero la reducción de incidentes se pagó sola dentro de dos trimestres a través de menor carga de on-call y mayor confianza para enviar.
De Nivel 4 a Nivel 5: Cerrar el ciclo
La transición final es sobre feedback. Las métricas de producción fluyen de vuelta al proceso de desarrollo. No solo verificas antes del deployment. Observas después del deployment y alimentas esa observación de vuelta a tus restricciones y sistemas de verificación.
Esto significa:
- Los patrones de error en producción actualizan tus plantillas de generación de tests
- Las regresiones de rendimiento automáticamente ajustan tus presupuestos de rendimiento
- Los incidentes de seguridad agregan nuevas reglas a tu pipeline de análisis estático
- Los datos de comportamiento de usuario informan cuáles rutas de código reciben verificación más rigurosa
El sistema aprende. No a través de machine learning en el sentido tradicional, sino a través de un ciclo de feedback ingenierado donde la realidad de producción continuamente refina las restricciones que gobiernan la generación de nuevo código.
Por qué la mayoría de los equipos se quedan atascados en Nivel 2
Los datos sugieren una distribución bimodal marcada. Basado en lo que observamos en organizaciones de ingeniería, la gran mayoría de los equipos usando herramientas de codificación con IA operan en Nivel 1 o Nivel 2. Solo una fracción pequeña ha alcanzado Nivel 4 o 5. La brecha no es sobre disponibilidad de herramientas. Es sobre cultura de ingeniería y voluntad de inversión.
Tres barreras estructurales explican el estancamiento:
La trampa de la velocidad. La IA en Nivel 1 y 2 ya se siente rápida. Los equipos ven un aumento de 3 a 5x en output de código y declaran victoria. El incentivo para invertir más desaparece porque la ganancia inmediata de productividad ya se capturó. Lo que pierden de vista es que el costo de mantenimiento, la tasa de incidentes y la densidad de defectos están subiendo proporcionalmente con el output. La velocidad es una ilusión. Estás tomando prestado contra confiabilidad futura. La regla 30-30-30 de product.engineer existe precisamente como antídoto a esta trampa: los equipos atascados en Nivel 2 típicamente gastan 70% de su tiempo en generación y casi nada en especificación o revisión, exactamente el desbalance que la regla corrige.
La paradoja de la automatización. Construir verificación automatizada (Nivel 4) requiere desacelerar temporalmente. Necesitas escribir los tests, construir los pipelines, configurar el escaneo de seguridad. Esto se siente como regresión cuando estabas enviando a velocidad 5x. Los líderes de ingeniería que miden velocidad por PRs mergeados por semana van a resistir esta inversión. Los ingenieros que miden velocidad por resultados del cliente la van a exigir.
La deuda de documentación. El Nivel 3 requiere restricciones documentadas. La mayoría de los codebases tienen años de decisiones no documentadas. El esfuerzo de hacer el conocimiento implícito explícito es real y poco glamoroso. Nadie es promovido por escribir registros de decisiones arquitectónicas. Pero sin ellos, las herramientas de IA operan en un vacío y generan código que viola principios que el equipo mantiene pero nunca escribió.
La ventaja del product engineer
El product engineer está naturalmente posicionado para impulsar la transición de vibe coding a vibe engineering. Aquí está por qué.
Definen el éxito por resultados del cliente, no por output de código. Cuando mides el éxito por si el problema del usuario se resolvió, no puedes tolerar los modos de falla del Nivel 1 y 2. Necesitas las garantías de confiabilidad del Nivel 4 y 5 porque tu reputación está atada a lo que sucede después del deployment, no a lo que sucede antes.
Son dueños del ciclo de vida completo. Ven los incidentes en producción. Escuchan las quejas de clientes. Observan los dashboards de métricas. Este feedback naturalmente los empuja hacia cerrar el ciclo (Nivel 5) porque viven con las consecuencias de ciclos no cerrados cada día.
Hacen trade-offs. No todo necesita rigor de Nivel 5. Un experimento rápido en 1% del tráfico? Nivel 2 podría estar bien. El pipeline de procesamiento de pagos? Nivel 5 o estás cometiendo negligencia. El product engineer toma esta decisión porque entiende tanto el riesgo técnico como el riesgo de negocio simultáneamente.
He visto este patrón repetirse consistentemente. Habiendo capacitado a más de 12,000 ingenieros en mi carrera y contratado más de 600, los ingenieros que exitosamente transicionan de vibe coding a vibe engineering comparten un rasgo común: se han quemado. No una vez. Repetidamente. Enviaron algo rápido, se rompió, lo arreglaron, luego construyeron el sistema para prevenir que esa clase de falla recurra. Los que se quedan en Nivel 1 están ya sea trabajando en cosas donde no importa (válido) o aún no han experimentado las consecuencias (temporal).
En AWS, veo esto diariamente. Los ingenieros trabajando en confiabilidad de infraestructura no pueden permitirse vibe coding a ningún nivel. El radio de explosión es demasiado grande. Pero incluso ellos usan herramientas de IA extensivamente. La diferencia es que han ingenierado los sistemas de verificación y restricción que hacen que el código generado por IA sea seguro para su contexto. No están evitando la IA. La están conteniendo dentro de un sistema de ingeniería digno de la responsabilidad.
La dimensión agéntica
Vibe coding vs vibe engineering se vuelve aún más consecuente cuando agregas ingeniería agéntica a la mezcla. Un agente de IA que opera a madurez de Nivel 1, generando código sin restricciones ni verificación, no es solo riesgoso. Es negligente. Un agente tomando decisiones autónomas sobre cambios de código necesita infraestructura de Nivel 4 o 5 debajo, o va a acumular errores más rápido de lo que cualquier humano podría.
La razón es matemática simple. Un humano en Nivel 1 genera quizás 20 cambios de código por día. Un agente en Nivel 1 genera 200. La tasa de error podría ser idéntica (digamos 15% de cambios introducen problemas), pero el número absoluto de problemas crece diez veces. A diferencia de un humano, el agente no tiene ese sexto sentido que hace que ingenieros experimentados hagan pausa y digan "espera, déjame pensar en esto."
Esto se conecta directamente con el problema de construir en un mundo de slop y el desafío más amplio de la crisis infinita del software. La restricción no es velocidad de generación. La restricción es velocidad de verificación. Tu sistema solo puede enviar tan rápido como pueda verificar. Si tu verificación corre a Nivel 2 (revisión humana manual), estás en cuello de botella sin importar qué tan rápido tu IA genera código.
Las organizaciones de ingeniería que van a ganar no son las que tienen los mejores modelos de IA. Son las que tienen la mejor infraestructura de verificación. Los modelos se están commoditizando rápidamente. Los sistemas de verificación no. Son a la medida de tu dominio, tus restricciones, tu tolerancia al riesgo y tus usuarios.
Un plan práctico de migración
Si actualmente estás en Nivel 1 o 2, aquí hay un camino realista a Nivel 4 dentro de un trimestre.
Semana 1-2: Audita tu estado actual.
Mapea cada lugar donde la IA genera código en tu flujo de trabajo. Nota cuáles rutas de código son críticas (datos de usuario, pagos, autenticación) versus bajo riesgo (herramientas internas, formato, documentación). Esta auditoría revela dónde necesitas Nivel 4 primero y dónde Nivel 2 sigue siendo aceptable.
Semana 3-4: Documenta restricciones para rutas críticas.
Escribe las reglas que el código generado por IA debe seguir para tus rutas de código de mayor riesgo. Incluye límites de seguridad, presupuestos de rendimiento, contratos de API y requisitos de manejo de datos. Estos se convierten en tus system prompts y documentos de contexto.
Semana 5-6: Construye verificación para una ruta crítica.
Elige tu única ruta de código más importante. Construye verificación automatizada para ella: type checking, tests basados en propiedades, escaneo de seguridad, tests de integración. Ejecuta cada cambio generado por IA a través de este pipeline antes de que llegue a revisión humana.
Semana 7-8: Mide e itera.
Rastrea tasas de defecto antes y después del pipeline de verificación. Mide cuánto disminuye el tiempo de revisión humana. Documenta cuáles capturas de verificación son más valiosas. Usa estos datos para justificar expandir a rutas de código adicionales.
Semana 9-12: Expande sistemáticamente.
Aplica el mismo patrón a tus siguientes tres a cinco rutas críticas. Para la semana doce, tu código de mayor riesgo tiene verificación de Nivel 4, tu código de riesgo medio opera en Nivel 3, y solo el código genuinamente de bajo riesgo permanece en Nivel 2.
Esto es progreso incremental y medible. Cada semana entrega valor concreto. Cada paso es reversible si algo no está funcionando.
Qué significa vibe coding vs vibe engineering para la contratación
La distinción de vibe coding vs vibe engineering está remodelando lo que las organizaciones de ingeniería buscan al contratar. El blog de ingeniería de Notion documentó su cambio en criterios de entrevista durante 2025: pasaron de evaluar "puede esta persona escribir código correcto?" a "puede esta persona diseñar sistemas que produzcan código correcto a escala?"
Este es el hábitat natural de ingenieros que piensan en sistemas. La entrevista ya no es "implementa una linked list en esta pizarra." Es "tienes un agente de IA generando código para tu sistema de pagos; diseña el sistema de verificación y deployment a su alrededor." La habilidad siendo evaluada es juicio de diseño de sistemas, no memoria de sintaxis.
Para candidatos, esto significa que tu propuesta de valor cambia. Saber cómo promptear herramientas de IA es lo mínimo. Saber cómo construir el sistema de ingeniería que hace que el código generado por IA sea seguro para producción es raro. Esa rareza es donde viven los premios de compensación.
El product engineer que puede articular el modelo de madurez, que puede explicar por qué Nivel 2 es peligroso para flujos de pago pero aceptable para dashboards admin, que puede diseñar el pipeline de verificación y los ciclos de feedback, esa persona es extraordinariamente valiosa ahora mismo. Entiende tanto la tecnología como el contexto en el que opera la tecnología.
La verdad incómoda
Vibe coding es divertido. Genuinamente divertido. Hay algo mágico en describir lo que quieres y verlo aparecer. Esa magia es real y vale la pena preservar para prototipado, exploración y trabajo creativo.
Pero vibe coding no es ingeniería. La ingeniería es la disciplina de construir sistemas que funcionan confiablemente bajo restricciones. Las "vibes" en vibe engineering no son las vibes de "veamos qué pasa." Son las vibes de un sistema bien diseñado operando suavemente mientras las herramientas de IA hacen el trabajo pesado dentro de límites cuidadosamente construidos.
La transición de vibe coding a vibe engineering es, en su esencia, la misma transición que todo ingeniero hace cuando pasa de construir proyectos personales a construir sistemas de producción. La tecnología cambió. La trayectoria de madurez no. Aún necesitas aprender disciplina. Aún necesitas construir sistemas. Aún necesitas ser dueño de resultados.
El ingeniero que domina esta transición, que puede hacer vibe coding de un prototipo el lunes, construir el sistema de verificación el martes y enviarlo de forma segura a producción el miércoles, es la persona más valiosa en el edificio. No porque escriba más código. Porque envía los resultados más confiables a la mayor velocidad.
Eso es lo que realmente cambia. Todo. Y nada.
Puntos clave
- Vibe coding acepta output de IA con verificación mínima; vibe engineering construye un sistema de calidad alrededor de la generación de código con IA.
- El cambio de vibe coding a vibe engineering agrega restricciones, verificación automatizada, observabilidad y ciclos de feedback.
- El código generado por IA es materia prima que debe pasar por un sistema ingenierado antes de llegar a los usuarios.
- El product engineer que domina esta transición envía más rápido Y con mayor calidad que ya sea codificación manual pura o vibe coding puro.
- Todo cambia (cómo pasas tu tiempo) y nada cambia (aún necesitas juicio, gusto y oficio).
FAQ
Cuál es la diferencia entre vibe coding y vibe engineering?
Vibe coding es usar IA para generar código a través de prompting conversacional, aceptando el output con verificación mínima o nula. Vibe engineering es construir un sistema de ingeniería completo alrededor de la generación de código con IA que incluye restricciones, verificación automatizada, observabilidad y ciclos de feedback. La distinción clave es que vibe coding trata el output de IA como el producto final, mientras que vibe engineering lo trata como materia prima que debe pasar por un sistema de calidad ingenierado antes de llegar a los usuarios.
Es vibe coding peligroso para sistemas de producción?
Vibe coding en Nivel 1 (promptear y rezar) es inapropiado para cualquier sistema de producción que maneje datos de usuario, transacciones financieras o lógica de negocio crítica. Sin embargo, vibe coding en Nivel 2 (promptear y verificar) puede ser aceptable para código de producción de bajo riesgo como interfaces admin internas o páginas de documentación. El riesgo depende del radio de explosión si algo falla, no de si la IA generó el código.
Cuánto tiempo toma transicionar de vibe coding a vibe engineering?
Un timeline realista para alcanzar madurez de Nivel 4 en tus rutas de código críticas es un trimestre (12 semanas). Madurez completa de Nivel 5 a través de toda una organización típicamente toma dos a tres trimestres. El cuello de botella usualmente no es capacidad técnica sino voluntad organizacional de invertir en infraestructura de verificación que temporalmente desacelera output visible mientras mejora dramáticamente la confiabilidad.
Se puede usar vibe coding y vibe engineering simultáneamente?
Sí, y deberían hacerlo. El nivel de madurez debería coincidir con el nivel de riesgo. Usen Nivel 1 o 2 para prototipos desechables y trabajo exploratorio. Usen Nivel 3 para herramientas internas y funcionalidades de bajo riesgo. Usen Nivel 4 o 5 para cualquier cosa que toque datos de usuario, dinero, seguridad o lógica de negocio core. El buen juicio de ingeniería significa saber qué nivel aplica a qué contexto.
Qué herramientas se necesitan para vibe engineering?
Las herramientas importan menos que el sistema. Se necesita: (1) una forma de proporcionar contexto y restricciones a herramientas de IA (system prompts, RAG, documentación), (2) verificación automatizada (CI/CD, testing basado en propiedades, análisis estático, escaneo de seguridad), (3) observabilidad (métricas, logs, tracing, alertas), y (4) seguridad de deployment (feature flags, releases canary, rollback automático). La mayoría de los equipos ya tienen piezas de esta infraestructura. La brecha es conectarlas en un sistema coherente alrededor del código generado por IA.
Lectura relacionada
- Qué es un Product Engineer? La guía fundamental del rol que conecta pensamiento de producto y ejecución de ingeniería.
- No Vibes Allowed: Resolviendo problemas difíciles en codebases complejos Donde la IA falla en sistemas legacy y cómo los product engineers cierran la brecha.
- La crisis infinita del software Por qué más output de código no significa más valor, y qué hacer al respecto.
- No construyas agentes, construye habilidades La decisión arquitectónica que determina si tu producto de IA envía confiablemente.
- Liderazgo en ingeniería asistida por IA Cómo los líderes de ingeniería deben adaptarse para gestionar equipos aumentados por agentes.