Skip to content

💻Orígenes y evolución

Ingeniero de software · Escribe, prueba y mantiene el código que sostiene la vida moderna — y es una de las primeras profesiones que ve cómo la IA automatiza su propio trabajo diario.

Compartir esta página

La ingeniería de software es una profesión inusualmente joven que lleva puesta una idea antigua. Desde los años 1840 se diseñaban procedimientos paso a paso para que las máquinas los siguieran, pero nadie cobraba por ser «ingeniero de software» hasta bien entrado el siglo XX, y el propio título laboral solo se propuso —a medias de forma provocativa— en 1968.

Su historia pasa por una condesa que nunca vio ejecutar su algoritmo, mujeres que recablearon a mano un ordenador del tamaño de una habitación, una oficial de la Marina que quería que las máquinas leyeran inglés, y una conferencia en los Alpes bávaros que dio nombre al campo al declarar que estaba en crisis.

Dónde empezó

1843Londres, Inglaterra

Ada Lovelace, al traducir un artículo de un ingeniero italiano sobre la Máquina Analítica de Charles Babbage, aún sin construir, añade un conjunto de notas más largas que el texto original. La última, la Nota G, detalla paso a paso cómo la máquina calcularía una secuencia de números: un algoritmo escrito para un ordenador que no existiría hasta un siglo después, y el punto que la mayoría de los historiadores marca como el nacimiento conceptual de la programación: la idea de que las instrucciones de una máquina podían diseñarse, escribirse y comprobarse como algo separado de la máquina misma.

Línea de tiempo

1843Ada Lovelace publica el primer algoritmo

Al traducir un artículo italiano sobre la Máquina Analítica de Charles Babbage, aún sin construir, Lovelace añade una nota que describe paso a paso cómo la máquina calcularía los números de Bernoulli: suele citarse como el primer programa de ordenador publicado.

1890Las tarjetas perforadas de Hollerith tabulan un censo

Las máquinas tabuladoras de tarjetas perforadas de Herman Hollerith procesan el censo de EE. UU. en alrededor de un año, un trabajo que el recuento anterior había llevado casi ocho años a mano; su empresa acabaría formando parte de IBM.

1943–1945Seis mujeres programan el ENIAC

Kay McNulty, Jean Jennings, Betty Snyder, Marlyn Wescoff, Fran Bilas y Ruth Lichterman programan el ENIAC, del tamaño de una habitación, en la Universidad de Pensilvania, ajustando interruptores y enchufando cables a mano, sin manual ni lenguaje de programación que las guiara.

1952Grace Hopper completa el primer compilador

El sistema A-0 de Hopper en Remington Rand traduce automáticamente notación matemática simbólica a código máquina, sustituyendo la práctica propensa a errores de copiar a mano las direcciones de subrutinas: un antepasado directo de todo compilador posterior.

1957FORTRAN llega al IBM 704

El equipo de John Backus en IBM publica FORTRAN tras unos dos años de trabajo; en dos años, se dice que más de la mitad de todo el código ejecutado en máquinas de EE. UU. estaba escrito en él.

1968Una conferencia de la OTAN nombra la «ingeniería de software»

En una conferencia en Garmisch, Alemania Occidental, los asistentes toman deliberadamente el término «software engineering» para argumentar que construir programas grandes exige la misma disciplina que construir puentes, enmarcando los sobrecostes crónicos del campo como una «crisis del software».

1969–1973Unix y C toman forma en Bell Labs

Ken Thompson y Dennis Ritchie construyen el sistema operativo Unix en un PDP-7 de reserva y luego lo reescriben en 1973 en el nuevo lenguaje C de Ritchie para que pueda ejecutarse en más de un tipo de ordenador.

1981El IBM PC lleva el software a cada escritorio

El PC de IBM se lanza con el PC-DOS de Microsoft, convirtiendo el software casi de la noche a la mañana en un producto de consumo masivo y consolidando a la joven empresa que Bill Gates y Paul Allen habían fundado seis años antes con Altair BASIC.

1991Linux y la World Wide Web llegan con meses de diferencia

Linus Torvalds publica su núcleo aficionado en Usenet en agosto, llamándolo «solo un hobby, no será grande ni profesional»; la World Wide Web de Tim Berners-Lee se hace pública el mismo mes, y el software abierto y compartido se convierte en el valor por defecto de internet.

2021–2023La IA entra en el editor de código

GitHub Copilot (2021) y ChatGPT (2022) llevan la generación de código con modelos de lenguaje grande al uso diario; en pocos años, GitHub informa de que los usuarios de su propia herramienta aceptan código sugerido por IA en una parte grande y creciente de las líneas que conservan.

Las eras

Consola de operador de un mainframe IBM System/360
ArnoldReinhold · CC BY-SA 3.0 · Wikimedia Commons
1950s–1960s

Mainframes y programación por lotes

Los primeros programas se entregaban como mazos de tarjetas perforadas y se ejecutaban por lotes, a menudo de noche, de modo que un solo error tipográfico podía costar al programador un día entero esperando la siguiente ejecución. Matemáticos, y en gran número mujeres, pasaron del cálculo a mano a este nuevo trabajo de «programación», visto como clerical y detallista más que prestigioso. FORTRAN (1957) y COBOL (1959) se impusieron en esa década, y la enorme dificultad de construir sistemas grandes y fiables en ese hardware preparó la «crisis del software» que la era siguiente intentaría nombrar y corregir.

Una minicomputadora PDP-11, la máquina más asociada al Unix temprano
Stefan_Kögl · CC BY-SA 3.0 · Wikimedia Commons
1969–1983

Unix, programación estructurada y una disciplina recibe nombre

Tras la conferencia de la OTAN de 1968, que puso nombre a los problemas crónicos de presupuesto y fiabilidad del campo, los años setenta produjeron un diagnóstico y un conjunto de herramientas: programación estructurada, pruebas disciplinadas y Unix, un sistema operativo construido en Bell Labs y reescrito en el nuevo lenguaje C para ejecutarse en más de una máquina. Minicomputadoras como el PDP-11 extendieron el poder de cómputo real más allá de un puñado de salas de mainframes, y la «ingeniería de software» empezó a aparecer como un título universitario propio, y no solo como un subcampo de las matemáticas o la ingeniería eléctrica.

Un IBM Personal Computer original de 1981
Own work (based on graphics by International Business Machines Corporation) · Public domain · Wikimedia Commons
1975–1990

Ordenadores personales y software en una caja

El kit Altair 8800 (1975) y luego el Apple II y el IBM PC (1981) convirtieron el software de algo que ejecutaban las instituciones en algo que una familia podía comprar en una estantería. Surgió una industria de software de consumo y para pequeñas empresas en torno a procesadores de texto, hojas de cálculo y juegos, vendidos en cajas retractiladas con política de devolución en lugar de un contrato de soporte. El desarrollo en cascada, muy documentado, dominó los grandes proyectos, mientras los márgenes del sector —programadores de dormitorio, hackers universitarios— trabajaban en algo más cercano al estilo actual, más rápido e informal.

Tux, la mascota pingüino del sistema operativo de código abierto Linux
Larry Ewing , Simon Budig , Garrett LeSage · CC0 · Wikimedia Commons
1991–2005

La web, el código abierto y el ciclo punto.com

La World Wide Web y el núcleo Linux se hicieron públicos con meses de diferencia en 1991, y juntos demostraron que el software construido a la vista, por voluntarios que nunca se habían conocido, podía competir con cualquier cosa que enviara una corporación. El navegador web creó casi de la noche a la mañana un mercado laboral enteramente nuevo; ese mercado luego vivió un auge y, en 2000–2001, se estrelló de forma espectacular, borrando una generación de startups pero dejando atrás Amazon, Google y la infraestructura sobre la que se apoyaría la era siguiente. El Manifiesto Ágil (2001) formalizó una reacción contra la planificación pesada y basada en documentos, a favor de ciclos más cortos e iterativos.

Diagrama conceptual de la infraestructura de computación en la nube
Sam Johnston · CC BY-SA 3.0 · Wikimedia Commons
2006–present

Nube, DevOps e ingeniería asistida por IA

Alquilar un servidor por horas en Amazon Web Services (2006) eliminó uno de los mayores costes fijos de operar software, y las tiendas de aplicaciones dieron a los ingenieros un segundo canal de distribución, centrado en el móvil, casi al mismo tiempo. Git y GitHub (2005–2008) normalizaron la colaboración distribuida sobre el mismo código incluso entre desconocidos, y las tuberías de despliegue automatizado acortaron el hueco entre terminar un cambio y que corriera ante los usuarios de meses a minutos. A principios de los años 2020, los asistentes de código con IA entrenados en código público habían pasado de novedad a herramienta diaria para una gran parte de los ingenieros profesionales: el instrumento nuevo que más rápido se ha extendido por la profesión en su historia.

Lo que este oficio reemplazó

Oficios vecinos que ya no existen — absorbidos, automatizados o regulados fuera.

Computador humano

1750s–1960s

Mucho antes de las máquinas electrónicas, «computer» era un cargo para una persona —a menudo una mujer— que hacía cálculos matemáticos a mano o con una calculadora mecánica: tablas astronómicas, trayectorias de artillería, órbitas de la NASA. Los ordenadores electrónicos tomaron los cálculos a partir de los años 1950 y 1960, y cuando el oficio desapareció ya había prestado su nombre a la máquina.

Operador de perforadora

1930s–1980s

Mayormente mujeres, los operadores de perforadora tecleaban datos e incluso código fuente de programas en tarjetas perforadas en máquinas como la IBM 026 y 029, una tarjeta por línea de programa. Los terminales interactivos y las pantallas de vídeo permitieron a los programadores teclear código directamente en el ordenador, y el oficio desapareció en una generación.

Webmaster

1993–2000s

En la primera década de la web, un «webmaster» a menudo diseñaba, programaba, redactaba y administraba un sitio entero: la palabra entró en los diccionarios en 1993 y recibió su propia dirección de correo reservada por estándar de internet en 1997. Al crecer la complejidad de los sitios, el rol se dividió en desarrollador front-end, back-end, ingeniero DevOps y editor de contenidos, y «webmaster» se fue borrando de las ofertas de empleo.

Oficios que desaparecieron →

Cada era de esta historia termina igual: llega una herramienta que elimina el trabajo manual en torno al cual se había construido toda una categoría laboral —cálculo a mano, perforación de tarjetas, planificación por lotes, aprovisionamiento manual de servidores— y quienes hacían ese trabajo suben en la pila o se van.

Los ingenieros que leen esto ahora viven la siguiente iteración de ese ciclo, no un primer encuentro con él. El resto de este perfil mira qué ha significado eso hasta ahora, en concreto, y qué sugiere una lectura razonable de la evidencia sobre lo que viene.

Profesiones similares

Vecinos más cercanos en el perfil de seis puntuaciones, no solo el mismo campo.

Seguir explorando

Seguir explorando

Más en Ingeniería y tecnología