Código
Accenture
IA generativa

La IA generativa, fundamental para el futuro del desarrollo de aplicaciones

Accenture ha invertido más de 1.000 millones de dólares en tecnología de IA generativa para ayudar a sus clientes a automatizar tareas rutinarias y ofrecer nuevas ideas. Aun así, Adam Burden, su ingeniero jefe de software, no confía en esta tecnología. A su juicio, todavía no está totalmente desarrollada.

Adam Burden
Adam Burden, ingeniero jefe de software y director global de innovación de Accenture.

Accenture ya ha gastado un tercio de una inversión prevista de 3.000 millones de dólares en tecnología de IA generativa para ayudarla a aumentar su productividad interna y producir con más eficiencia productos para sus clientes. Los resultados han sido nada menos que notables.

Después de utilizar GitHub Copilot, el 90% de los desarrolladores afirmó sentirse más satisfechos con su trabajo, y el 95% dijo que disfrutaba más codificando con la ayuda de Copilot. Al reducir las tareas más rutinarias, también les hizo un 40% más productivos.

En consecuencia, el rendimiento de la inversión ha sido impresionante en otros aspectos. Para empezar, Accenture ha conseguido 1.000 millones de dólares en reservas de IA generativa de clientes en los seis primeros meses de este año fiscal. Más de la mitad de esas reservas se produjeron durante el segundo trimestre. La empresa, que emplea a unos 150.000 ingenieros, también aspira a duplicar su plantilla de IA, pasando de los 40.000 empleados actuales a 80.000 en el futuro.

Tras finalizar recientemente su trabajo como director de tecnología de Accenture para Norteamérica, Adam Burden ha asumido otras funciones, entre ellas la de ingeniero jefe de software y director global de innovación, responsable de todos los proyectos de I+D relacionados con laboratorios. En resumen, Burden es responsable de todos los proyectos empresariales de incubación de Accenture, sus inversiones de riesgo, así como de los proyectos de innovación y asesoramiento, y de la mano de obra asociada a ellos.

Burden ha hablado con Computerworld sobre los retos de utilizar herramientas IA generativa, junto con algunos de sus beneficios más inesperados.

 

Cómo afecta la IA generativa a su trabajo

Al respecto de cómo ha afectado IA generativa a su trabajo y al de los ingenieros de software y otras personas que trabajan para este especialista, Burden confiesa que esta tecnología “ha pasado a formar parte de los procesos de trabajo naturales de la gente, donde tenemos sistemas generales de IA integrados en los equipos. Por ejemplo, hay uno llamado Amethyst, que utilizo constantemente para localizar mejor las fuentes de conocimiento y los recursos de Accenture, y para hacer preguntas sobre metodología.

“Y luego, si nos fijamos en el trabajo del individuo medio, ahora utilizan la IA generativa para ayudar a escribir contenidos. Han adoptado un producto en nuestro departamento de marketing llamado Writer, que también resulta ser una inversión de riesgo para nosotros. Y realmente se ha convertido en una especie de estándar de facto para ayudar a la gente a escribir un primer borrador de contenido, pero también para ayudarles a escribir mejor”.

Si nos centramos en la ingeniería de software, “yo diría que los verdaderos ingenieros de software, programadores y desarrolladores se encuentran entre los más afectados o positivamente afectados por la IA general y por la forma en que hacen su trabajo todos los días”, prosigue Burden.

“Dependiendo de cómo se cuenten las cifras, tenemos entre 150.000 y 200.000 ingenieros de software. Ese grupo utiliza [Copilot] de muchas maneras diferentes hoy en día. Por supuesto, también utilizamos nuestras propias herramientas internas, que ahora están totalmente integradas en la IA generativa. Por ejemplo, el equipo de proyectos de un cliente cuenta con 1.600 personas que utilizan IA generativa a diario… y también entregan sus proyectos”.

¿Para qué utilizan principalmente la IA generativa los ingenieros de software que forman parte del equipo de Adam Burden? En su opinión, esta cuestión “es interesante. Va más allá del desarrollo de software. Hay muchas cosas que ponen nerviosa a la gente sobre el propio desarrollo de software y la codificación. La IA es buena para inspirarse, pero hay que comprobar muy bien lo que se genera.

Por otra parte, ¿qué ocurre con las otras piezas de la ingeniería de software? Burden sostiene que esto es, en gran medida, algo parecido al principio de Pareto. Algo así como que el 80% del trabajo que haces no tiene nada que ver con escribir el código.

“Yo diría que nuestros ingenieros de software, y he visto algunos de los datos también, dicen que el código que realmente obtienen de Copilot y otras herramientas [IA generativa] es utilizable entre un 70% y un 80%, en algunos casos incluso más. Y lo comprueban a fondo antes de utilizarlo. Yo diría que esto se aplica más a los proyectos internos que a los clientes. Pero nos dicen que son entre un 40% y un 50% más productivos con IA generativa en las cosas que hacen”.

 

Experiencia personal en el uso de la IA generativa

A la hora de hablar de su propia experiencia en el uso de la IA, el ingeniero jefe de software de Accenture reconoce que la ha utilizado en su cargo para diversos fines. “Por ejemplo, cogí lo que es básicamente una aplicación de comercio electrónico, una de código abierto llamada SimplCommerce (se puede conseguir en GitHub). Básicamente, la IA toma y lee a lo largo de todo el código fuente. Estamos hablando de un par de cientos de miles de líneas de código C #. El objetivo era descubrir si IA gen podía ayudarnos a mantener mejor las aplicaciones. Lo que descubrí fue que su capacidad para ayudarme a tomar más rápidamente una aplicación con la que no estaba familiarizado era notable. Le pedí que me ayudara a encontrar un error en el código, y lo encontró enseguida. Pero eso no fue lo mejor: hago mucho trabajo de preingeniería, entre otras cosas, y me pregunté cómo sería si le pidiera a la IA generativa que hiciera algo nuevo. Así que estaba haciendo una demostración [de Copilot] a la gente en una sala de conferencias y me dije: voy a hacer lo que nunca se debe hacer cuando se muestra una demostración. Entonces pedí al auditorio que me dijera de qué querían que hiciera la demo. Les pedí que alguien me dijera una mejora que esta aplicación de comercio electrónico no haga actualmente. Una persona levantó la mano y dijo: «Quiero que añadáis una lista de deseos». En realidad no sabía cómo iba a hacerlo, pero empecé a pensar, sé lo que hay en una lista de deseos, qué se puede añadir y eliminar. Lo que realmente me sorprendió fue que empezó a poner cosas en las historias de usuario que no había pensado. Y al final del día, en realidad construyó un producto mejor de lo que yo habría hecho solo... Porque estaba haciendo sugerencias tales como: “Tienes que añadir una función para publicar tu lista de deseos en las redes sociales para que puedas tener más presencia”. Por eso me pareció una muy buena idea”.

De ahí que este ingeniero esté convencido de que estas herramientas nos harán mejores. “Me dan una especie de superpoderes para convertirme en un mejor ingeniero de software. Y esto es sólo un microcosmos de la experiencia que nuestra gente está teniendo ahora en el espacio”.

A la pregunta de cuáles son las principales razones por las que utiliza IA generativa, bien como ayuda en la generación de código, para actualizar software, crear nuevas aplicaciones o historias de usuario, mantiene que “los principales objetivos que perseguimos actualmente son ayudarnos con las historias de usuario y con la generación de código posterior. No lo utilizamos del todo en la parte de generación de código porque aún no está preparado para ello. Pero yo diría que las partes del predesarrollo y el postdesarrollo de software de la escritura de código están en su debe de manera muy importante. Si hago eso, estoy abordando el 80% del trabajo que hay ahí fuera, pero también obtengo como resultado un montón de beneficios”.

Es el momento de preguntarle por qué no confía aún de manera plena en la IA generativa. Burden cree que la principal preocupación de la gente tiene que ver con los aspectos relacionados con la seguridad. “Lo que hemos hecho es construir nuestros propios modelos lingüísticos con una base de código muy limitada. Si estás usando un modelo público, no sabes de dónde procede. Así que, cuando se trata de utilizar algunos modelos públicos de generación de código o incluso Microsoft Copilot y otros, optamos por un proceso muy prescriptivo de revisiones de seguridad y otras directrices similares para cuando generamos ese código. No obstante, lo que sí tengo claro es que mejorará con el tiempo”.

“A medida que obtengas más motores de desarrollo de software de tipo empresarial, creo que algunas herramientas como la que hemos visto recientemente tales como la de Devin o de Poolside y otros, que van a contar con bibliotecas de ingeniería de software más cerradas que ofrecerán más confianza y fe en lo que realmente están entrenados”, apostilla.

De igual manera, Burden dice que no puede señalar el software generado por Copilot y decir que este código en particular que generó tiene un gran fallo de seguridad por culpa de que fue enseñado contra otra biblioteca. “Todavía no hemos visto exactamente ese escenario, pero sí algunos ejemplos de código más débil o incluso algunos algoritmos malos que no funcionan tan bien, que es la razón por la que seguimos poniendo el tipo de escrutinio que hacemos hoy”.

“Trabajamos literalmente en cientos de lenguajes de programación porque los sistemas heredados de nuestros clientes están escritos en ellos. Si quieres usar IA generativa para generar literalmente Pascal, Fortran, etcétera, es evidente que no es tan buena en eso como lo es con lenguajes más modernos donde hay más bibliotecas de software disponibles, como Java por ejemplo”, añade.

¿Confía este ingeniero lo suficiente en IA generativa como para permitir que se utilice para potenciar una fuerza de trabajo de software ciudadana para que ésta pueda crear sus propias aplicaciones empresariales? “Creo que los proveedores de no-code y low-code, como Mandix y otros, han hecho un buen trabajo y están empezando a combinar las funciones de IA generativa en sus productos para ayudar a los desarrolladores ciudadanos a trabajar más rápido”. A lo que añade: “Todavía no he visto que llevemos y entreguemos IA generativa a la parte empresarial, lo que nos lleve a decir: “Aquí hay un motor de generación de código y una indicación para que alguien que no está formado como ingeniero de software lo haga”. Porque, francamente, tendrían problemas para crear un software que cumpliera los estándares de su empresa y que pudiera seguir los diferentes patrones y modelos de arquitectura que son importantes para que su empresa encaje en el negocio. ¿Mejorarán esos modelos y mejorarán esas herramientas? Al cien por cien, completamente”.

¿Qué medidas ha adoptado Accenture para garantizar que la IA no cause problemas de seguridad, privacidad o infracción de derechos de autor? “Por supuesto, en nuestro proceso de verificación del software comprobamos que se realicen las atribuciones correctas, y proporcionamos la procedencia del código que realmente se ha escrito. Así podemos saber de dónde procede. Y, por supuesto, mantenemos todos los aspectos de seguridad. Y como he dicho, en realidad no permitimos que se generen códigos sin filtrar. Podemos permitir que IA generativa sirva de inspiración y nos ayude a acelerar las cosas, pero en términos de ponerlo directamente en sistemas de producción o de otro tipo. En suma, no es algo en lo que estemos plenamente comprometidos en este momento”.

Burden reconoce que en Accenture se encuentran en pruebas en este sentido, “y creo que eventualmente llegaremos allí. Nos va a llevar algún tiempo sentirnos muy cómodos al respecto, porque nunca se sabe, por ejemplo, qué licencias de software de código abierto se heredan y sobre qué se construye realmente. Así que hay que tener mucho cuidado. Por eso, hasta que no dispongamos de pequeños modelos lingüísticos más privados, por así decirlo, a partir de los cuales los estamos construyendo, creo que la gente va a ser muy prudente, sobre todo en la fase de desarrollo del código”.

De todas formas, considera que “es una gran fuente de inspiración si realmente estás luchando por resolver un problema. Por ejemplo, ¿cuál es el algoritmo más eficiente para hacer X, Y y Z? Es una forma estupenda de hacer realidad algunas de esas cosas. Hace poco, estábamos probando un ordenador cuántico y necesitábamos un algoritmo para el problema del viajante de comercio, un problema muy clásico de tipo cuántico. Pero queríamos que pudiera resolverlo en una arquitectura clásica. Lo utilizamos para generarlo y fue increíble. Era perfecto; generaba algo y podíamos ver que funcionaba de forma realmente eficiente, y era increíble. Así que ese tipo de escenarios, creo, son juego limpio ahora mismo”.

 

Aumentos de productividad y de la eficiciencia

¿Qué tipo de aumentos de productividad y eficiencia se observan? Este ingeniero tiene claro que estos factores dependen del recorrido que haga cada uno. No obstante, considera que podría situarse en el 40%, “aunque también depende del entorno heredado y de lo que se haya aprendido. Así, si no hay documentación para el código o la aplicación o algo por el estilo, por supuesto que la productividad va a ser mucho menor. Pero si se trata de un entorno relativamente rico con un buen historial, la productividad aumenta”, precisa.

“Es más, hay algo que nos sorprende incluso a nosotros mismos: hemos utilizado IA gen en SAP y otros paquetes de software, y nos hemos dado cuenta de que es realmente beneficioso utilizarla con sistemas de paquetes. Por lo tanto, no sólo se beneficia de la ingeniería de software personalizada, sino también de los sistemas de paquetes. ¿Es un 40%? En general, no. Es un poco menos. Pero sin duda nos está dando un impulso allí donde podemos aplicarlo”, apostilla.

Cuando dice que utiliza IA gen en «software empaquetado», ¿qué significa eso? “A menudo, como con SAP, no es tan diferente de la ingeniería de software. A veces, además de la configuración del sistema SAP, se hacen muchas otras cosas, como es el caso de KDD, que son documentos de decisión clave. Sigues creando scripts de prueba y otras cosas. Lo están utilizando para ese tipo de elementos y están viendo muchos beneficios”.

La educación es fundamental para el empleo seguro y responsable de la IA. Tiene claro que, por un lado, están los que la utilizarán correctamente y los que crearán IA. Por eso nos hemos comprometido a duplicar nuestra plantilla de IA de 40.000 a 80.000 trabajadores. Hemos invertido 3.000 millones de dólares en IA. Eso es en torno a las personas que van a construir estos sistemas. Y luego, para toda la gente que los usará, mis ingenieros de software y otros, ésta es una gran iniciativa que tenemos ahora mismo. De hecho, contamos con un sistema interno para que la gente converse más con las soluciones IA generativa. Lo llamamos TQ, o su cociente tecnológico, y hemos tenido cientos de miles de empleados que han tomado la clase de formación TQ sobre IA generativa. Ahora tenemos muchos que también participan plenamente en clases más profundas sobre cómo utilizar la IA generativa y los diferentes sistemas en los que se ejecuta. En Accenture estamos haciendo un gran esfuerzo para redimensionar nuestra plantilla. Lo decimos mucho: creemos que hay que invertir más en las personas que en la tecnología”.

En su opinión, “no hay mano de obra de IA para contratar. No existe. Así que tienes que crear la tuya propia, y a las empresas les decimos que es algo en lo que tienen que centrarse y prestar mucha atención”.

¿Cómo se transmite el mensaje sobre las necesidades de formación y cómo se consigue que los empleados participen en ella? “Para nosotros es una cuestión descendente. Así, nuestro CEO ha hecho que sea una gran prioridad para nuestro negocio estar preparados para la era de IA generativa. Es un pilar clave de la forma en que abordaremos la prestación de servicios a los clientes en el futuro. De hecho, ya forma parte de muchos de nuestros materiales de formación. Pero también se oye de arriba abajo -el mensaje de prácticamente todos nuestros canales de liderazgo- que afrontar estos cursos es una prioridad para nuestros empleados. Y, por supuesto, tenemos la gamificación y otras cosas que nos ayudan a asegurarnos de que estamos consiguiendo la penetración adecuada en toda la organización para conseguir este propósito”.

“Hay muchas maneras de abordarlo. Pero nos gusta creer, y lo comprobamos, que nuestros empleados suelen estar muy dispuestos a reinventarse con regularidad. Y lo aceptan de buen grado. Creo que para otros clientes u otras circunstancias, necesitan ayuda en diferentes tipos de soluciones para incentivar a su personal a pasar por este proceso de aprendizaje. Y es importante. Si tu trabajo va a cambiar por tener un agente de IA que trabaje contigo como profesional de atención al cliente u otras cosas, es un ajuste significativo a la forma en que actualmente realizas tu trabajo”.

¿Cree Burden que es necesario limpiar los repositorios de datos antes de implantar una solución de IA, o bien se puede trabajar en ello a medida que se ponen a prueba estas soluciones? “Si se trata de utilizarla como herramienta, por ejemplo, para escribir u otras cosas, se puede hacer sobre la marcha. Ahora bien, si lo que se pretende es crear una base de conocimientos de la empresa y limpiarla gradualmente para poder cargarla en ella y utilizarla para respuestas de tipo test, creo que primero hay que tener una base de datos limpia. Es sin duda uno de los principios que hemos observado. Si no se ha invertido en la creación de esta base, es un requisito imprescindible para poder utilizar la IA generativa a escala empresarial”.

De ahí que “se pueden hacer pruebas de concepto y proyectos piloto, pero si se quiere reinventar toda una cadena de valor, por ejemplo en finanzas o incluso en la parte de la cadena de suministro de la empresa, será realmente necesario hacer esa inversión”, añade.

“La verdad es que muchos clientes han pasado por esto. Han invertido mucho en los últimos dos años en la limpieza de sus datos y lagos de datos y en tener una mejor arquitectura de datos y fundamentos de datos. Por lo tanto, su nivel de preparación es bueno. Eso no significa que no haya otros que vayan por detrás. Pero le digo a la gente que está detrás, la buena noticia es que puede utilizar IA generativa para ayudarle a limpiar sus datos. Y eso no era una herramienta que estaba disponible hace unos años para las personas que lo estaban haciendo de una manera menos eficiente. Así que puede que acabes limpiando tus datos y mejorando tu entorno de una forma más rápida, eficiente y quizás incluso mejor de lo que lo hicieron tus predecesores. Esa es la forma de ver el vaso medio lleno”.

¿Cómo utilizaba la IA generativa para limpiar los datos? Burden dice que se puede utilizar IA generativa para leerla realmente y tomar grandes volúmenes de datos, por ejemplo, y ayudarte a identificar duplicados y contenido con formato incorrecto tales como direcciones y otras cosas. Y, de hecho, te proporcionará recomendaciones sobre el aspecto que tendrían los datos depurados”.

“Y si utilizas a tus ingenieros de manera adecuada para que sepan qué aspecto tienen los datos buenos y qué aspecto espero que tengan los resultados, pueden obtenerlos en un formato común limitado para que puedas cargarlos directamente en otro modelo de datos con datos limpios. También encontramos que no está mal para mejorar el enriquecimiento de datos. Si se desea, por ejemplo, cambiar a un código postal de nueve dígitos para todo el mundo, puede aplicarse fácilmente a todos los datos sin necesidad de herramientas sofisticadas u otros productos de terceros. Por eso quiero decir esto: no te equivoques: IA gen es definitivamente una gran herramienta para ayudarte con la limpieza de datos y la construcción de una mejor base de datos”.

En consecuencia, ¿acabará la IA con los puestos de trabajo?, le preguntamos, y ésta es su respuesta: “Creo que va a crear puestos de trabajo diferentes. Si nos remontamos a la década de 1940, la mayor ocupación para las mujeres era la de telefonista en las centrales telefónicas. Y ya no quedan muchas telefonistas. Pero tenemos muchas empleadas, y creo que la historia está llena de ejemplos así. Vamos a ver trabajos diferentes. Por supuesto, el de ingeniero rápido es uno de los más citados, pero habrá muchas otras cosas. La forma en que lo vemos es que va a automatizar muchas cosas ordinarias y va a permitir a la gente ser más extraordinaria. Creemos que la mayoría de la gente se beneficiará del aumento de sus capacidades y también mejorará mucho su manera de hacer las cosas. Entonces, ¿acaba con el empleo? No lo creo. Al final hará que los trabajos sean diferentes, mejores y más satisfactorios. En mi caso, como ingeniero de software, ahora puedo trabajar en problemas mucho más difíciles que en las cosas más simples, aburridas y ordinarias que normalmente tendría que hacer. Y creemos que es un gran resultado para las personas y también para las empresas”.



Forma parte de nuestra comunidad

 

¿Te interesan nuestras conferencias?

 

 
Cobertura de nuestros encuentros
 
 
 
 
Lee aquí nuestra revista de canal

DealerWorld Digital