lunes, 26 de octubre de 2026

Perfiles de desarrollo software con inteligencia artificial

La inteligencia artificial está impactando en la forma de realizar muchas, muchísimas tareas y, en ocasiones, perfiles de trabajo completos, e incluso sectores.

Uno de los ámbitos que, en este momento, está en fuerte transformación, y hasta cierto punto peligro, el la ingeniería de software.  


Pinceladas sobre la transformación de la ingeniería de software


La ingeniería de software, específicamente el desarrollo de software, ha sido siempre una tarea intensiva en mano de obra (en trabajo humano) y también una actividad intelectual, al menos en lo relativo al diseño y también en muchos casos a la propia codificación, prueba y operación.

Sin embargo, la inteligencia artificial generativa ha venido a revolucionar todo esto.

Por un lado, hace la construcción de software muchísimo más sencilla, ya que en gran medida se reduce a pedirle al modelo adecuado o agente lo que se necesita (sin necesidad de conocer ni lenguajes de programación, frameworks ni arquitecturas técnicas) y además, a pedirlo en lenguaje natural. Por otro lado, y como consecuencia de lo anterior, baja enormemente la barrera de entrada para la incorporación de profesionales capaces de desarrollar.

Ya el auge del 'Low-Code' había supuesto un primer paso para poner al alcance de profesionales no desarrolladores la construcción de herramientas informáticas para su día a día, dando lugar al concepto del 'citizen developer'. 

Pero la inteligencia artificial supone un paso más allá y un cambio radical porque ya no es ni siquiera necesario conocer asuntos como variables o estructuras de control, ya no es necesario saber usar una herramienta concreta. Ahora la herramienta es el lenguaje natural y el foco se pone, más que en saber cómo se debe hacer el software en qué queremos que haga ese software, que ya la IA se encarga de decidir el cómo. Es como quedarnos en lo que en los modelos tradicionales de ingeniería software se denominaba la especificación de requisitos, delegando en la inteligencia artificial el diseño y la construcción.

No quisiera, de todas formas, exagerar la simplicidad. Ese mundo tan ideal probablemente aplica a soluciones software relativamente sencillas y, sobre todo, 'muy trilladas', de esas que existen miles y miles de ejemplos construidos y que se hace siempre más o menos igual: una 'landing' page', la gestión simple de registros en una base de datos, un cuadro de mando, etc.  En otras aplicaciones más novedosas, complejas, críticas o especializadas, es posible que todavía se requiera importante concurso humano.

Ya hace unos meses comenté en un post titulado 'Lo que no reluce en el 'Vibe coding': retos, limitaciones y equilibrios' algunas de las problemáticas que pueden aparecer si delegamos en exceso en la inteligencia artificial.

En cualquier caso, el ámbito de aplicación seguro de la inteligencia artificial en materia de construcción de software es muy amplio y el impacto profundo.


Perfiles para ingeniería software


El cambio está servido, es profundo y afecta notablemente, casi de forma radical, a cómo se lleva a acabo la actividad de diseño, construcción y prueba de software.

Y eso, claro, tiene impacto en los perfiles profesionales.

Acabando la lectura del excelente libro 'An Illustrated Guide to AI Agents' de Maarten Grootendorst y Jay Alammar, me he encontrado una tipología de perfiles que, aunque simple, me ha parecido interesante, precisamente por su simplicidad y la claridad de su estructura.

En el último capítulo del libro, abordan los autores la temática de los agentes de código, aquellos agentes especializados precisamente, en construir software. Aunque hablo de 'especializados', y aunque los autores no dan una pista concreta, creo que hoy en día, incluso chatbots generativos como ChatGPT (especialmente en el caso de Codex) o Claude (especialmente Claude Code) se pueden considerar agentes de código 'especializados'. 

Y, al hilo de este tema, los autores identifican cinco perfiles o, si se prefiere, cinco tipologías de uso. Tres de esos perfiles caen bajo e paraguas del término 'usuario' y dos bajo el paraguas de 'constructores'.


Los tres perfiles usuarios


Cuando los autores hablan de 'usuarios' se refieren a perfiles profesionales que utilizan un agente de código ya construido para, con él, a su vez, crear nuevo software. Los tres tipos que porponen son los siguientes:

  • Usuarios orientados sólo a los resultados ('result-only users'): Desarrollan elementos relativamente modestos como un análisis, un cuadro de mando o una 'landing page', y no tienen el más mínimo interés en el software en sí mismo sino sólo en lo que crean, en el resultado. Aunque los autores no lo mencionan con esta claridad, me los imagino sobre todo como usuarios que crean pequeños elementos muchas veces integrados dentro de su chatbot generativo (por ejemplo, creando artefactos en Claude).

  • 'Vibe coders': Sí tienen interés en el software pero lo construyen utilizando únicamente la definición en lenguaje natural y dejando los detalles de implementación a la inteligencia artificial, al agente de código. De nuevo, me los imagino usando Claude o ChatGPT pero también otras herramientas como Lovable, Windsurf o Cursor.

  • Ingenieros de software ('software engineers'): Exhiben un perfil similar a un desarrollador tradicional, conocen los lenguajes de programación y los elementos técnicos y, aunque se apoyan en la inteligencia artificial, son capaces de directamente instrucciones más técnicas o revisar el código generado. Me los imagino usando inteligencia artificial pero integrada dentro de otros entornos de desarrollo como Visual Studio Code, Anaconda o Jupyter Notebooks.


Los dos perfiles constructor


Cuando los autores nos hablan, sin embargo, de constructores, están pensando en perfiles desarrollador que crean los propios agentes de código, que luego terceros (los usuarios) utilizan para crear software. En este apartado, distinguen dos perfiles:
 
  • Constructores de agentes: Parten de modelos de inteligencia artificial especializados en código ya construidos y, alrededor de esos modelos, crean el resto del agente incluyendo la gestión del contexto, gestión de herramientas, interacción con el usuario, etc.

  • Constructores de modelos: Los que construyen y entrenan a los modelos propiamente dichos.


Conclusiones


No cabe ninguna duda de que la inteligencia artificial, está transformando radicalmente toda la disciplina de la ingeniería de software y los perfiles profesionales que trabajan en ella de una forma u otra.

En el post hemos visto una tipología sencilla y clara de cinco perfiles en relación con el uso o construcción de agentes de código.


No hay comentarios:

Publicar un comentario