Reflexiones sobre la ingeniería de software en la era de la IA
Flujos de trabajo acelerados por IA y productividad
- Varios desarrolladores describen flujos de trabajo de extremo a extremo en los que los LLM ayudan con la redacción de requisitos, decisiones de diseño, esquemas, maquetas, pruebas, codificación y refactorización.
- Beneficios reportados: crear en solitario productos que antes requerirían un equipo, comprimir semanas de trabajo en días y usar IA para refactorizaciones a gran escala y búsqueda de errores en bases de código enormes.
- Otros limitan la IA a la creación de prototipos, la detección de errores o la documentación, y luego reescriben a mano por calidad y mantenibilidad.
Calidad del código generado por IA
- Fuerte desacuerdo: algunos dicen que los LLM son “programadores terribles” y que deberían usarse principalmente como analizadores o patitos de goma; otros afirman que el código escrito por IA es rápido, sólido y ya domina gran parte de su código en producción con revisión humana.
- Muchos señalan que la IA alcanza aproximadamente entre el 90 y el 95 % de su nivel de calidad; pulir el último 5–10 % (casos límite, estilo, coherencia) es mentalmente agotador y puede anular las ganancias de velocidad.
- Hay consenso en que el resultado de la IA debe revisarse y en que los modelos olvidan restricciones, malinterpretan la retroalimentación y pueden proponer soluciones peligrosas.
Límites de alcance y problemas difíciles
- Varios comentarios destacan dominios en los que los LLM actuales tienen dificultades: motores de juegos (por ejemplo, mapeo avanzado de oclusión), simulaciones complejas, algoritmos de vanguardia y decisiones de arquitectura no bien representadas en los datos de entrenamiento.
- La IA tiende a elegir pilas y patrones “promedio” o populares (por ejemplo, frameworks web comunes) incluso cuando son subóptimos.
Roles, carreras y erosión de habilidades
- Una postura: la mayoría de los ingenieros de software tradicionales que “implementan funciones” quedan obsoletos; los roles restantes se agrupan en:
- Una pequeña élite que crea bibliotecas, herramientas y software de código abierto que alimentan los datos de entrenamiento.
- Profesionales que “canalizan” y restringen el código generado por IA dentro de las organizaciones.
- Roles tipo QA que verifican y ponen a prueba el resultado de la IA.
- Otros sostienen que la buena arquitectura, la mantenibilidad y el diseño siguen siendo esenciales en el software comercial y no pueden ser reemplazados por generadores de código.
- Preocupación continua por que los desarrolladores junior pierdan práctica de implementación y que se atrofie la habilidad a largo plazo.
Experiencia, disfrute y oficio
- Para algunos, trabajar con LLM resulta frustrante: los modelos alucinan, ignoran instrucciones y se comportan como colaboradores olvidadizos y demasiado confiados.
- Otros se sienten liberados de tareas aburridas y disfrutan concentrándose en la arquitectura, la definición de problemas y el diseño de nivel superior.
- Varios comentaristas enfatizan la programación como construcción personal de modelos mentales y como un oficio, y predicen un futuro en el que los humanos cada vez más “moldearán” vastos flujos de código de IA —más parecido al cultivo de bonsáis que a la construcción desde cero.
Debates económicos y sociales
- Desacuerdo sobre si realmente estamos en una “Era de la IA”:
- Postura a favor de la IA: enormes ganancias de productividad, analogía con tractores y líneas de ensamblaje.
- Postura escéptica: hype, beneficio social limitado hasta ahora, problemas éticos con los datos de entrenamiento y un cambio desde el aprendizaje abierto y democratizado hacia herramientas de IA centralizadas y tras paywall.