LLMs, Vibe Coding y el desarrollo de software

LLMs, Vibe Coding y el desarrollo de software

Alejandro Pena, Chapter Lead Backend & QE

Alejandro Pena

Chapter Lead Backend & QE

28 de mayo de 2025

El auge de los LLMs está redefiniendo industrias enteras, y el desarrollo de software no es una excepción. Su capacidad para generar código, potenciar la autoformación o asistir en tareas de depuración ha abierto un abanico de posibilidades que apenas estamos comenzando a explorar. Aunque su enorme potencial es evidente, esta nueva era también presenta desafíos y riesgos sobre los que merece la pena reflexionar.

La idea de este texto surge tras la lectura del artículo “How to stop your human from hallucinating, de Shrivu Shankar. El paralelismo que traza entre las alucinaciones de los LLMs y los errores humanos me resultó tremendamente interesante. En él, Shrivu argumenta cómo los profesionales competentes pueden cometer errores (alucinaciones) si los procesos o la comunicación son imprecisos, de forma similar a como un LLM falla debido a la falta de contexto o datos ambiguos. La clave estaría no en culpar al individuo (o la IA), sino en mejorar los sistemas, los procesos y la información con la que operan.

En este artículo, partiendo de uno de los conceptos de moda (el famoso Vibe Coding), abordaremos desafíos, riesgos y buenas prácticas que consideramos cruciales para el uso responsable y efectivo de los LLMs en el contexto del desarrollo de software.

El objetivo es evitar que nuestras herramientas, y sobre todo nosotros mismos, alucinemos en el proceso.

Vibe Coding

Concepto y origen

El término fue popularizado por Andrej Karpathy, una de las figuras más influyentes del campo de la inteligencia artificial durante febrero de 2025. En una serie de tweets, además de introducir el término, enfatiza lo divertido de la práctica y lo útil que lo ve para “proyectos de fin de semana de usar y tirar”.

La técnica consiste en proporcionar a la IA indicaciones en lenguaje natural y aceptar el código resultante basándose más en una “sensación” o “intuición” (“vibe”) de que podría funcionar, que en un análisis riguroso o un conocimiento de su funcionamiento interno. Aceptar la respuesta del LLM, aplicar sin comprobar el diff, y seguir lanzando prompts hasta que la feature objetivo funcione: “Just see stuff, say stuff, run stuff, and copy paste stuff, and it mostly works”

El atractivo psicológico es tremendo, basado en dos factores muy potentes: la ilusión de una productividad acelerada, y la gratificación instantánea. La promesa de “poder crear” sin requerir un aprendizaje o esfuerzo es algo difícil de ignorar. Especialmente cuando se combina con la fascinación actual que existe con las capacidades de la IA.

Sin embargo, todo esto esconde importantes contrapartidas que analizamos a continuación, y sobre las que Karpathy ya hizo spoiler en su famoso tuit de febrero de 2025.

Algunas ventajas, pero muchas limitaciones

Empecemos resaltando su principal virtud, y en mi opinión, su utilidad real: la creación rápida de POC, la exploración semi-instantánea de ideas, conceptos… incluso por parte de perfiles sin una base técnica fuerte. Ya no hace falta profundizar en lenguajes o frameworks para validar “eso que se te ha pasado por la cabeza”. En este sentido, puede actuar como un catalizador de la creatividad, permitiendo materializar ideas de forma preliminar con una velocidad antes impensable.

Pero todo cambia cuando se plantea trasladar este estilo de trabajo a un entorno productivo. Esa promesa de velocidad, corre el riesgo de transformarse rápidamente en un obstáculo. Sin una estrategia global, y una supervisión, es fácil que termine desembocando en un “caos técnico”: dificultad de mantenimiento, extensión e incluso comprensión, agravado por las dificultades inherentes de los modelos para entender un contexto demasiado amplio, y las interdependencias entre proyectos y sistemas de gran envergadura.

Algunas problemáticas concretas:

  • La calidad del código: A bajo nivel, la incoherencia, la falta de patrones de diseño sólidos y la perpetuación de soluciones erróneas¹ (aprendidas por el LLM de sus datos de entrenamiento) hacen que el software sea difícil de mantener y escalar. Pero sobre todo, personalmente me preocupa a alto nivel, la falta de una arquitectura coherente derivada de múltiples intervenciones aisladas de la IA compromete seriamente la integridad del sistema.

  • Las vulnerabilidades: Surgen tanto del uso incorrecto o no supervisado de librerías y funcionalidades, como de las propias alucinaciones de los LLMs. Son ya un vector de riesgo identificado e importante². Por ejemplo, el exploit de alucinaciones en imports comunes ha dado lugar a una nueva forma de typosquatting³, rebautizada como “slopsquattin⁴”.

  • Soluciones ineficaces o subóptimas: Causadas por la tendencia natural de los LLMs hacia el uso de fuerza bruta en sus soluciones. Algoritmos ineficientes que impactan negativamente en el rendimiento y la mantenibilidad. Este efecto se acentúa en los contextos grandes, en proyectos reales.⁵.

  • Dependencia excesiva de la IA: Esta situación puede incluso derivar en una forma de vendor lock-in con la propia IA. Debido a las problemáticas listadas, es sencillo entrar en un modelo de dependencia, donde sólo una IA parece capaz de entender el código, creando una efecto bola de nieve y haciendo insostenible una solución a largo plazo.

Tras la parte negativa, ahora toca destacar que estos problemas no son una condena inevitable, sino que se relacionan directamente con la ausencia de un marco de uso responsable y una supervisión crítica constante. El Vibe Coding, como Karpathy dijo, es divertido y útil, pero la adopción en entornos productivos de la IA requiere un enfoque diferente. Un enfoque que a menudo se ve comprometido por la urgencia y las presiones del mercado.

El espejismo del FOMO y la presión competitiva

Hoy en día el FOMO (Fear of Missing Out) es bien conocido por todo el mundo. Industrias como las relacionadas con el entretenimiento (videojuegos, cine y series, música…) giran en torno a este concepto: si no estás ahí YA y AHORA, “no disfrutas”.

Pero ese miedo no es exclusivo de ellas, existe en también en el desarrollo de software, y unido a la presión competitiva del contexto actual, es muy difícil de ignorar.  El problema es que suele llevar a tomar decisiones precipitadas, a menudo sin una debida reflexión ni planificación estratégica sólida.

Hay preguntas y dudas que resuenan en la mente de cualquiera:  “¿Si todo el equipo utilizase IA, sobraría gente?”, “Si no la usase, ¿seguiría siendo competitivo?”, “¿Puedes siquiera ser competitivo a largo plazo sin utilizarla?”.

En mi opinión, no se trataría tanto de que "sobrara gente", sino de que la productividad del equipo se dispararía exponencialmente si se adopta con un enfoque adecuado. Por otra parte, un equipo talentoso y bien organizado creo firmemente que puede seguir siendo competitivo sin adoptar la IA, sin duda, pero estaría renunciando a un multiplicador de fuerza e innovación significativo. Con el impacto que eso puede tener cuando hablamos de largo plazo.

La sensación generalizada es que no hay opción de “bajarse de este barco”. La verdadera cuestión no es si adoptar o no los LLMs, sino cómo integrar de forma responsable y estratégica una herramienta de este calibre. No dejarnos llevar por el FOMO, hacerlo con buena letra.

El cambio de paradigma

El proceso, por la naturaleza disruptiva del mismo, va más allá de una adopción estándar de una nueva herramienta. Debe producirse un cambio de paradigma fundamental. No sólo cambiará nuestros procesos y formas de trabajar, sino que exigirá una evolución en cómo nosotros, como humanos, interactuamos y hacemos uso de estas herramientas. Para navegar esta transformación con éxito, es crucial abordar tanto la dimensión humana y psicológica como los aspectos técnicos y organizativos que implica.

El enfoque humano y psicológico

Tres conceptos clave, que cualquier usuario de LLMs debería tener en cuenta.

Humildad epistémica: La base del juicio crítico

El primer pilar para una interacción responsable prácticamente con cualquier fuente de información, pero especialmente con los LLMs es la humildad epistémica. El concepto invita a reconocer las limitaciones y sesgos de cualquier conocimiento (incluso el propio). Aplicado a los LLMs implica asimilar que, a pesar de su impresionante capacidad para generar texto coherente y código funcional, no “comprenden” en el sentido humano. Creo sinceramente que el llamarlo Inteligencia Artificial juega en nuestra contra en ese sentido. Es importante entender que no es más que un proceso de generación estadístico. Terriblemente complejo y avanzado, pero no inteligente en el sentido estricto de la palabra.

Por tanto, deberíamos cuestionar sistemáticamente las respuestas aportadas por la IA en lugar de aceptarlas ciegamente⁶ (¡Hola de nuevo, Vibe Coding!). Verificar, validar, contrastar… es la clave en un contexto en el que generar contenido es tan sencillo. Esta humildad debe extenderse también a nosotros: debemos ser conscientes de que juzgar la calidad y corrección de las respuestas de un LLM requiere un esfuerzo cognitivo real y, a menudo, un conocimiento experto del dominio.

Solo desde este reconocimiento de las limitaciones mutuas (de la IA, y las nuestras) podemos ejercer un juicio crítico verdaderamente efectivo.

Superando la indiferencia: el compromiso de la persona técnica

Ligado directamente al concepto anterior, hay que destacar la necesidad de superar lo que se denomina la indiferencia epistemológica (Epistemic Insouciance⁷). Este término hace referencia a una actitud de desinterés o despreocupación por la verdad o exactitud del conocimiento. Es una situación relativamente común en el contexto social actual, donde la explosión de fake news y contenidos falsos inunda redes y medios. Generando en el usuario una actitud de rechazo o indiferencia, donde la veracidad pierde importancia frente a contenidos que confirman sus expectativas.

La clave aquí es que un “ciudadano” puede permitirse esa actitud en el día a día, pero una persona técnica, tiene una responsabilidad activa hacia el conocimiento. Un enfoque de indiferencia, no sólo resulta insostenible sino que es peligroso para un profesional de cualquier ámbito, y en el desarrollo de software no es diferente. Un/a desarrollador/a no puede permitirse el lujo de ser indiferente ante la calidad, la corrección o las implicaciones del código que escribe, integra o revisa.

No sólo se trata de “hacer que funcione”, sino de “saber cómo funciona”. Y sobre todo asegurar que funciona de forma segura y eficiente. La indiferencia epistemológica, en el desarrollo de software moderno asistido por IA, no es una opción. Es el camino más directo hacia el "caos técnico" que comentamos en puntos anteriores.

Descarga cognitiva estratégica

El concepto de descarga cognitiva⁸ se refiere básicamente a “reducir el esfuerzo mental necesario para ejecutar una tarea mediante el uso de recursos externos”. En el contexto que estamos tratando, la relación es evidente. Delegamos la generación de código, búsqueda de información y demás tareas, liberando nuestra capacidad mental para otros objetivos. Y ahora ya imaginaréis por donde va a ir el siguiente razonamiento: esta aparente comodidad conlleva el riesgo de atrofia de nuestras propias habilidades cognitivas⁹ ¹⁰ si caemos en una delegación indiscriminada y, sobre todo, pasiva.

Es precisamente en este punto donde la descarga cognitiva estratégica se vuelve clave. No implica una renuncia, pero sí es recomendable ser cuidadoso y selectivo sobre qué tareas delegamos y cuáles reservamos para nuestro “músculo mental”. La tendencia que a priori suena más lógica es, precisamente, reservar nuestra energía para aquellas actividades que requieran un elevado juicio crítico, creatividad, o un profundo conocimiento del dominio y el contexto. Algunas de estas actividades podrían incluir:

  • Diseño de arquitecturas.
  • Revisión del código, especialmente el generado por IA.
  • Resolución de problemas complejos, que requieran una comprensión holística del sistema.
  • Toma de decisiones estratégicas sobre tecnologías a utilizar o estrategias a aplicar.

Esto tiene un aspecto positivo importante, y es que al enfocar nuestro esfuerzo en aspectos de mayor nivel, no solo mitigamos el desaprendizaje, sino que podemos incluso refinar y profundizar en competencias nuevas o más valiosas.

El enfoque técnico y organizativo

Temas tan cruciales como la seguridad, la privacidad o la selección de modelos ya han sido tratados en multitud de artículos, por lo que aquí nos centraremos en otros aspectos que consideramos igualmente relevantes.

Prompts como Código (PaC): Trazabilidad y reproducibilidad

A medida que los LLMs se integran en el proceso de desarrollo, y la generación de código va tomando presencia, la gestión de los prompts que alimentan estos modelos adquiere una importancia crítica. Una buena práctica es apostar por un enfoque “prompts-as-a-code”¹¹, tratando las instrucciones que aportamos a los modelos con el mismo rigor y buenas prácticas que aplicamos al código fuente tradicional.

Este paradigma incluye el versionado y documentación de cada prompt. Pero va más allá de simplemente guardar diferentes versiones. Implica una trazabilidad completa de cambios (qué cambió y por qué), la capacidad de revertir a versiones anteriores, pruebas de prompts antes de desplegarlos, gestión de variaciones A/B o rastreo de versiones por entorno. El objetivo es que cualquier cambio relacionado con los prompts o modelos sea auditable y reproducible, permitiendo rastrear cómo y por qué la salida de un LLM ha variado con el tiempo. Esto es crucial en entornos con alta generación de código automático. Un pequeño cambio en un prompt, o en el modelo subyacente, puede tener un impacto significativo en la funcionalidad, consistencia o seguridad del producto final. 

Más allá del versionado, también debería enmarcar una gestión de prompts más amplia. Considerarlos parte de la infraestructura de la aplicación. Esto puede incluir desde la capacidad para realizar actualizaciones en caliente, monitorizar rendimiento y outputs, gestionar controles de acceso o coordinar cambios entre diferentes servicios.

La clave diferencial con el control de versiones tradicional es la naturaleza no determinista de los LLMs. No basta con pruebas unitarias sobre el prompt, se requiere de un seguimiento continuo del output de los modelos para gestionar esta variabilidad. Existen multitud de herramientas especializadas para facilitar la implantación, aunque la opción del uso directo de Git y su integración en pipelines es siempre una opción válida.

Gobernanza y responsabilidad compartida

El proceso de integración de este tipo de herramientas requiere del establecimiento de marcos de gobernanza claros y, sobre todo, robustos. Tal y como destacan en “Responsible artificial intelligence governance: A review and research framework”¹², deberían basarse en un conjunto de prácticas estructurales, procedimentales y relacionales diseñadas para asegurar que los sistemas operen de manera ética, transparente y alineada con los valores humanos. Aspectos esenciales para asegurar no sólo un uso legal, sino también seguro y eficiente de este tipo de tecnología.

Estos marcos deben definir explícitamente roles y responsabilidades dentro de la organización. Este tema se trata en detalle en el artículo Gobernanza de la Inteligencia Artificial*”*¹³. Aunque la dirección establezca la visión, y el departamento legal asegure el cumplimiento, la gobernanza es una responsabilidad compartida que involucra múltiples niveles y áreas especializadas. Esto podría incluso incluir la asignación de figuras clave como guardianes o responsables de la IA (AI Stewards). Lo que está claro es que la asignación de responsabilidades es fundamental para cada etapa del ciclo de vida, y las auditorías internas deberían enfocarse en ayudar a verificar estas políticas establecidas.

Aunque pueda sonar a un proceso burocrático más, una gobernanza bien implementada actúa como catalizador y debe potenciar la innovación precisamente al asegurar que esta se produce de una forma segura y sostenible. Casos como el Centro de Excelencia de IA impulsado por Sngular y Fakeeh Care Group¹⁴ son un claro ejemplo. Permite a las corporaciones explotar y maximizar el potencial de la IA con mayor confianza, minimizando riesgos y asegurando que los beneficios se materialicen de acuerdo con los objetivos y valores de la organización. Alcanzar un modelo de innovación responsable.

Quality Engineering: pilar estratégico en la era de los LLMs

Tomando como partida los puntos anteriores, se desprende claramente que la figura ya clave de Quality Engineering evolucionará para convertirse en un rol aún más estratégico.

Se introducen nuevos desafíos que exigen una evolución en las prácticas tradicionales de QA/QE, el más claro es la naturaleza no determinista de los sistemas basados en LLMs. Ya no es suficiente con probar funcionalidades con entradas y salidas predecibles, es necesario adaptarse a esa variabilidad y posibles comportamientos inesperados. El nuevo alcance no se limita sólo a la validación del código generado, también deberá abarcar aspectos como:

  • Validación del proceso de generación: Calidad y robustez de los prompts y configuraciones que generan código. Evaluar reacciones ante entradas inesperadas o maliciosas.
  • Detección de alucinaciones y sesgos: Identificar cuándo el LLM inventa o reproduce sesgos indeseados.
  • Pruebas de regresión sobre modelos: Asegurar que las nuevas versiones de los LLMs o los reentrenamientos no degradan o rompen funcionalidades previas.

La relevancia de estas prácticas y retos es evidente. Nuestro compañero Fran Moreno ya había comentado desafíos similares¹⁵ a los que se enfrentó en la implementación real de proyectos. En su caso, una estrategia de regresión sobre modelos entrenados para utilizar otro modelo como validador, solventando el problema del no determinismo en la respuesta.

Formación continua: Upskilling & Reskilling

Para finalizar, ninguna estrategia técnica u organizativa es efectiva si no lleva consigo un proceso de mejora y adquisición de esas nuevas competencias por parte de los equipos. Esta capacitación debería alinearse con lo comentado hasta ahora, no sólo es manejo de la IA, es también asimilar conceptos de prompt engineering efectivo y desarrollar esas capacidades de revisión crítica que se han tratado.

En esencia, es lo mismo de siempre, una constante en el sector: fomentar una cultura de aprendizaje y adaptación. Algo más complejo en este caso, por la naturaleza de la herramienta incorporada, pero con un potencial de recompensa mayor si se alcanza ese punto dulce de eficiencia, responsabilidad e innovación en el uso de la IA.

Conclusión

La era de los LLM es una de promesas y peligros (como casi todas, por otra parte…). Si el Vibe Coding funciona perfectamente como una advertencia de lo que puede ocurrir con una adopción a ciegas, la oportunidad de verdad reside en la integración de estas herramientas con juicio humano, responsabilidad y una estrategia clara.

Usar la IA como un “copiloto”, con el humano siempre conduciendo. Balancear velocidad y robustez, fomentar el escepticismo y dominar la habilidad de usar (y no usar) los LLMs de forma eficaz.

La humildad epistémica, el compromiso técnico, la estrategia de prompts-as-a-code, la definición de una gobernanza sólida o la importancia de una estrategia de calidad adecuada no son más que los mimbres con los que lograr el objetivo que apuntábamos al principio: la adopción exitosa, y evitar que tanto máquinas como humanos “alucinemos” en el proceso.


Notas:

  1.  https://www.gitclear.com/ai_assistant_code_quality_2025_research
  2.   https://www.theregister.com/2025/04/12/ai_code_suggestions_sabotage_supply_chain/
  3.   https://capec.mitre.org/data/definitions/630.html
  4.   https://socket.dev/blog/slopsquatting-how-ai-hallucinations-are-fueling-a-new-class-of-supply-chain-attacks
  5.   https://arxiv.org/pdf/2502.12115
  6.   https://www.linkedin.com/pulse/epistemic-humility-ai-fork-road-knowledge-creation-daisy-thomas-saqge/
  7.   https://www.pdcnet.org/8525737F00583637/file/57470D980359184D85258316006B0C15/$FILE/jpr_2018_0043_0000_0005_0024.pdf
  8.   https://www.sciencedirect.com/science/article/abs/pii/S1364661316300985
  9.   https://www.mdpi.com/2075-4698/15/1/6
  10.   https://drphilippahardman.substack.com/p/the-impact-of-gen-ai-on-human-learning
  11.   https://medium.com/data-science-collective/version-control-for-prompts-why-it-matters-and-how-to-do-it-right-af2e334dd22c
  12.   https://www.sciencedirect.com/science/article/pii/S0963868724000672
  13.    https://www.sngular.com/es/insights/356/gobernanza-de-la-inteligencia-artificial-desafios-y-perspectivas
  14.    https://www.sngular.com/es/insights/365/fakeeh-care-group-y-sngular-se-alian-para-impulsar-la-inteligencia-artificial-en-el-sector-sanitario-de-arabia-saudi
  15.    https://www.linkedin.com/posts/franciscomorenosanz_explorando-los-retos-en-el-testing-de-activity-7235214432476246018-Sea_
Alejandro Pena, Chapter Lead Backend & QE

Alejandro Pena

Chapter Lead Backend & QE

Con más de 16 años de experiencia en Ingeniería de Software, mi especialidad gira en torno al Backend, QE y DevOps. Siempre me han apasionado las nuevas tecnologías, el mundo del desarrollo y los videojuegos. En mi tiempo libre me dedico a disfrutar de la naturaleza con mi familia, el cine, la literatura o la música.


Nuestras últimas novedades

¿Te interesa saber cómo nos adaptamos constantemente a la nueva frontera digital?

Madrid vibra con la nueva era de la Inteligencia Artificial en el Google Cloud Summit 2025
Madrid vibra con la nueva era de la Inteligencia Artificial en el Google Cloud Summit 2025

Evento

26 de mayo de 2025

Madrid vibra con la nueva era de la Inteligencia Artificial en el Google Cloud Summit 2025

Fakeeh Care Group y Sngular se alían para impulsar la Inteligencia Artificial en el sector sanitario de Arabia Saudí
Fakeeh Care Group y Sngular se alían para impulsar la Inteligencia Artificial en el sector sanitario de Arabia Saudí

Corporate news

22 de abril de 2025

Fakeeh Care Group y Sngular se alían para impulsar la Inteligencia Artificial en el sector sanitario de Arabia Saudí

AB360: una plataforma pionera de Inteligencia colaborativa para la edificación sostenible
AB360: una plataforma pionera de Inteligencia colaborativa para la edificación sostenible

Insight

21 de abril de 2025

AB360: una plataforma pionera de Inteligencia colaborativa para la edificación sostenible

Google lanza su ofensiva definitiva en inteligencia artificial desde el Cloud Next 2025
Google lanza su ofensiva definitiva en inteligencia artificial desde el Cloud Next 2025

Tech Insight

14 de abril de 2025

Google lanza su ofensiva definitiva en inteligencia artificial desde el Cloud Next 2025