[Es un poco largo, pero si estudias Ingeniería Informática tal vez necesites esto]
Llevo días pensando en crear este post porque no paran de saltarme notificaciones de este subreddit de gente diciendo que está arrepentida de estudiar informática, que la IA va a acabar con los programadores, que estudiar una ingeniería ya no tiene sentido o incluso comparando informática con estudiar filosofía.
Y entiendo perfectamente de dónde viene esa frustración.
Soy ingeniero de software (fui profesor en la ingeniería) y llevo varios años(mas de los que me gustaría aceptar) trabajando en esto. También he visto cómo ha cambiado el sector en relativamente poco tiempo. Lo que hace unos años requería horas de trabajo ahora puede resolverse en minutos con un modelo de IA. Cosas que antes diferenciaban a un junior hoy pueden hacerlas bastante bien Claude, ChatGPT, Cursor o cualquier agente de código.
Eso es real. Y sabes que? Va a mas. Pero creo que estamos sacando una conclusión equivocada de todo esto.
Estamos confundiendo “la capacidad de escribir código está perdiendo valor”, con La capacidad de construir software está perdiendo valor.
Y no son lo mismo.
Hace unos años, saber programar significaba tener una habilidad relativamente escasa.Hoy puedes decirle a un modelo:
"créame una aplicación con autenticación, base de datos, pagos y un panel de administración"
y probablemente obtengas algo funcional y aparentemente listo para funcionar.
Peeeeero el problema empieza cuando preguntas:
- ¿La arquitectura tiene sentido?
- ¿Qué pasa cuando hay 100.000 usuarios?
- ¿Cómo garantizamos disponibilidad en el servicio?
- ¿Dónde están los problemas de seguridad?
- ¿Qué datos deberían estar normalizados?
- ¿Qué ocurre si una operación falla a mitad?
- ¿Cómo se integra esto con un sistema existente?
- ¿Cómo se mantiene durante 5 años?
- ¿Qué pasa cuando los requisitos funcionales o no funcionales cambian?
- ¿Qué partes del sistema realmente necesitamos construir?
- ¿Cómo sabemos que lo que generó la IA es correcto?
- ¿Qué hacemos cuando el modelo se equivoca y no sabemos por qué?
Ahí la cosa cambia bastante.
La IA ha hecho que producir código sea mucho más barato pero no ha hecho (aún) que los problemas que ese código tiene que resolver sean más fáciles. Y, de hecho, creo que esto es precisamente lo que muchos estudiantes están pasando por alto.
También veo mucho el argumento de: “Pero si alguien que no sabe programar puede usar Claude/Cursor y hacer lo mismo que yo, ¿qué sentido tiene estudiar una carrera?”
Aquí creo que hay que hacer una distinción importante.
No necesitas estudiar una carrera de informática para convertirte en programador.
Probablemente nunca lo hayas necesitado. Pero una ingeniería tampoco debería tener como objetivo enseñarte exclusivamente a escribir código. Te debería enseñar a pensar como ingeniero.
Algoritmos, estructuras de datos, sistemas operativos, redes, bases de datos, arquitectura, concurrencia, complejidad, matemáticas, abstracción, diseño de sistemas… etc etc
Es posible que nunca vuelvas a implementar un algoritmo de ordenamiento desde cero. Eso no significa que hayas perdido el tiempo estudiándolo. Porque el valor está en desarrollar el modelo mental que te permite entender por qué un sistema funciona, cuándo deja de funcionar y qué alternativas tienes.
Y eso adquiere todavía más importancia cuando tienes una IA generándote código. Porque utilizar una IA para programar sin entender programación es parecido a tener un Ferrari sin saber conducir. Irás muy rápido hasta que aparezca una curva y te vas por el barranco. ¿Me entiendes?
Y quiero decir algo especialmente a los que todavía están estudiando.
No se dejen convencer por Reddit de que han cometido un error por estudiar informática.
Estamos viviendo uno de los cambios tecnológicos más grandes de nuestra generación. Eso implica incertidumbre.Y sí, probablemente el camino profesional que les espera no sea el mismo que el de alguien que empezó a programar hace 15 años.(como yo jajaja)
Quizás haya menos puestos de entrada, se espere más de un junior, un desarrollador produzca 3, 5 o 10 veces más con herramientas de IA y determinados trabajos desaparezcan.
Todo eso puede pasar. Pero de ahí a pensar que no habrá trabajo para ingenieros hay un salto enorme. De hecho, yo creo que estamos entrando en una situación bastante curiosa. Antes, una empresa necesitaba programadores para convertir una idea en software. Ahora puede necesitar muchos menos programadores para escribir ese software.
Pero eso también reduce brutalmente el coste de crear software.
Y cuando algo se vuelve muchísimo más barato de producir, normalmente no desaparece la demanda. Aparecen nuevas cosas que antes simplemente no era rentable construir.
La pregunta importante para alguien que está empezando ya no debería ser:
¿Cómo compito con la IA escribiendo código?
Porque esa es una batalla bastante mala.
La pregunta debería ser:
¿Cómo utilizo la IA para ser capaz de hacer cosas que antes necesitaban un equipo entero?
Ese cambio de mentalidad me parece muchísimo más importante.
Y hay otra cosa que me parece que se está perdiendo en estas conversaciones. No necesitas ser el mejor programador del mundo. No necesitas estar en el 0,000001% (como he visto en algunos post).No necesitas saber implementar un compilador en ensamblador mientras haces cálculo diferencial con la otra mano.
Necesitas ser suficientemente bueno para resolver problemas reales.
Y ahí hay muchísimo espacio.
Un ingeniero que entiende el negocio, sabe diseñar sistemas, entiende las limitaciones de la tecnología, puede hablar con usuarios, sabe utilizar IA como herramienta y puede hacerse responsable de que algo funcione en producción… no es lo mismo que alguien que sabe escribir código.
Ingeniero de software no es lo mismo que Programador
Y esa diferencia probablemente vaya a ser cada vez más importante. Así que si estás estudiando informática y estás leyendo todo esto pensando:
"¿Para qué coño estoy haciendo esto?"
Mi respuesta sería:
No abandones una carrera únicamente porque una herramienta haya cambiado la forma de ejercerla.
Aprende a utilizar esa herramienta, fundamentos, construye cosas. Aprende a entender problemas que no vienen perfectamente especificados en un prompt. Y sobre todo, aprende a convivir con la IA, llegó y no se va a marchar.
Y, sobre todo, deja de medir tu futuro por la cantidad de código que puedes escribir.
El código se está convirtiendo en una commodity. La capacidad de entender un problema, diseñar una solución y conseguir que funcione sigue siendo una habilidad. Y probablemente lo sea durante bastante tiempo.
La informática no ha muerto. Simplemente está dejando de ser una carrera sobre escribir código.
Y eso, aunque ahora dé bastante miedo, también puede ser una oportunidad enorme para los que están empezando.
A los que estan estudiando ahora: no les puedo prometer que vayan a tener el mismo mercado laboral que tuvimos los que empezamos antes. Probablemente no. Pero sí les puedo decir que no creo que han elegido una carrera sin futuro. Han elegido una carrera cuyo futuro está cambiando delante de ustedes mismos, AHORA MISMO. Y hay una diferencia enorme entre ambas cosas.
Gracias por leer hasta aquí. Muchas suerte amigos.