Read time: 6 mins
Inteligencia Humano-Artificial

¿Tu Programa de Computadora lo Hizo una Persona... o una Inteligencia Artificial? La Revolución Silenciosa en el Mundo del Software

Si alguna vez te has preguntado quién está detrás de las aplicaciones que usas a diario o los sistemas que hacen funcionar a las empresas como la nuestra, la respuesta tradicional suele ser: ingenieros y desarrolladores de software, personas que escriben el "código" que le dicen a la computadora qué hacer. Pero esto está cambiando, y más rápido de lo que imaginas.

Desde hace un tiempo, las herramientas de Inteligencia Artificial (IA) ayudan a escribir código y han dejado de ser solo una idea futurista. Hoy, son una realidad en miles de empresas. Una herramienta muy conocida, por ejemplo, ya la usan más de 77,000 organizaciones.

¿Qué Hacen Estas Herramientas?

En pocas palabras, estas herramientas de IA pueden escribir grandes partes del código que antes hacíamos directamente las personas. Imagina que un escritor tuviera un asistente que pudiera redactar párrafos o incluso capítulos enteros basándose en unas pocas (pero precisas, entre más precisas mejor) indicaciones. Esto es algo parecido.

¡Y esto tiene efectos enormes!:

  • Todo va más rápido: ayudan a los desarrolladores a ser mucho más eficientes, a veces con mejoras que escalan a niveles de los cientos de veces en productividad. Esto significa que los proyectos de software avanzan a mayor velocidad.
  • Equipos más pequeños: se puede hacer la misma cantidad de trabajo, o incluso más, con equipos de desarrollo más eficientes. Algunos incluso piensan que la IA podría encargarse de parte del trabajo que antes hacían los programadores que recién empezaban.
  • Contratación más estricta: ahora que el trabajo básico de escritura de código puede ser automatizado, las empresas buscan candidatos con habilidades más allá de simplemente saber escribir líneas de código.

El Gran Cambio para Quienes Escriben Código

Y aquí es donde viene la parte más personal y, para muchos, preocupante. Tradicionalmente, los ingenieros de software encontramos mucha satisfacción en "construir cosas" con nuestras propias manos y mentes. Nos encanta resolver problemas complicados, encontrar errores difíciles y hacer que el código sea limpio y eficiente.

Pero ahora, ese trabajo de "artesanía" a menudo lo hace la IA. Esto está generando una "crisis de identidad" en la profesión. Los desarrolladores podrían sentir que están pasando de ser creadores a ser supervisores o "directores de orquesta" que más bien le dicen a la IA qué hacer.

Nuevas Habilidades en Demanda

Dado que la IA puede escribir el código, la habilidad clave ya no es sólo saber programar, sino saber comunicarse con la IA. Esto se llama a veces "ingeniería de prompts" (que es la forma en que se le dan las indicaciones a una IA). Al final es como aprender a hablar un nuevo idioma para poder pedirle a la IA exactamente lo que necesitas. Y para hacerlo bien, y eficientemente, se requiere una forma de "pensamiento diferente".

Pero no solo eso. Las empresas también buscan que los desarrolladores piensen de forma más general y estratégica, pensando en aspectos que a veces los desarrolladores llegan a obviar: como la experiencia de usuario, la forma en que interactúan las aplicaciones para brindar funcionalidades y al final ofrecer un producto o servicio.

Hoy por hoy, y no sólo por la IA, se requiere que un profesional del software pueda:

  • Resolver problemas complejos usando la tecnología.
  • Diseñar cómo encajan las distintas partes de un sistema de software (lo que se llama "arquitectura").
  • Comunicarse bien, con otras personas.
  • Tener pensamiento crítico.
  • Entender qué necesita el cliente y cómo el software crea valor.

Pero ahora también se requiere la interacción eficiente y que encuadre todos estos aspectos con el resultado de una "conversación" con una IA. En esencia, el nivel de lo que se espera de un desarrollador ha aumentado.

potenciados con IACreatividad: ¿Qué Significa Ahora?

¿Sigue habiendo lugar para la creatividad? Los estudios sugieren que sí, pero la creatividad en el software no es, ni lo ha sido por mucho tiempo en realidad, el crear algo totalmente nuevo y de la nada, sino más bien siempre se ha tratado de saber reutilizar de forma inteligente y útil el código que ya existe. Se trata de resolver problemas de maneras efectivas que sirvan a otros o puedan usarse en el futuro. Y la IA en esto puede ser un aliado muy potente.

Los Retos y la Necesidad Humana

A pesar de la ayuda de la IA, no todo es perfecto. El código que generan estas herramientas a veces tiene errores, es repetitivo o no es fácil de mantener. Esto significa que los desarrolladores humanos seguimos siendo cruciales para revisar, corregir y asegurarnos de que el código sea de alta calidad y seguro. El papel que antes tenía un líder técnico con un equipo de desarrolladores, ahora lo tiene un solo desarrollador con las herramietas de IA con las que interactúa.

Además, la forma en que confiamos en la IA es diferente a como confiamos en una persona. La confianza en la IA puede empezar alta, pero disminuye rápidamente con cada error. A veces, los equipos no trabajan tan bien con la IA si no aprenden a colaborar efectivamente con ella.

¿Qué Significa Esto para el Futuro?

Este cambio muy bien se compara con otras transformaciones históricas, como cuando las máquinas aparecieron en la Revolución Industrial y los artesanos tuvieron que adaptarse. Los ingenieros de software de hoy también estamos en un punto de adaptación.

Hay diferentes caminos: algunos se enfocarán en áreas donde la IA aún no es buena (como seguridad o sistemas muy complejos). Otros abrazarán por completo el rol de dirigir la IA. Y muchos buscarán un equilibrio, usando la IA para las tareas más repetitivas y reservando su propia experiencia para la resolución de problemas más complejos y creativos. En cualquier caso, la habilidad más importante en este panorama es la adaptabilidad.

La definición de lo que significa ser un "ingeniero de sAI-brainoftware" se está ampliando, o quizá recuperando su sentido original: ya no se trata sólo de escribir código, sino de ser solucionadores de problemas que usan la tecnología, y ahora también usando y dirigiendo herramientas de IA. La IA es una herramienta poderosa que puede amplificar lo que los desarrolladores podemos hacer.

En resumen, la IA no está reemplazando a los desarrolladores, pero sí está cambiando radicalmente cómo trabajamos, qué habilidades son más importantes y cómo nos sentimos acerca de nuestra propia profesión. Se espera que los desarrolladores nos convirtamos en "maestros constructores de sistemas aumentados por IA", combinando la experiencia humana con las capacidades de las máquinas. Es un momento de cambio emocionante y muy significativo, que exige aprender y adaptarse.


Y ahora, la pregunta, ¿creías que yo escribí este artículo? En realidad sólo lo revisé y retoqué un poco. Adivina quién fue el verdadero autor.

¿Quieres saber cómo lo hice? Leí este artículo: The Software Engineering Identity Crisis, que me llevó luego a éste: How AI Tools Are Reshaping the Coding Workforce y a éste otro: Developer Productivity for Humans: A Human-Centered Approach to Developer Productivity.

Después se los alimenté a esta herramienta: NotebookLM (que fue calificado por Time como uno de los mejores inventos del 2024, ¡deberías probarlo!) y genere un contenido de divulgación para ti con un prompt...  Eso sí, la revisión y comentarios previos a publicación, como siempre, han venido de parte de mi esposa <3


Ahora sabes mi secreto ;)

Etiquetas