Saltar al contenido
Alberto LaraAnálisis y arquitectura EdTech
Ir a la web
Un flujo abundante de código atraviesa revisión, despliegue y estabilidad antes de convertirse en un cambio terminado.

Ingeniería de software· 13 min

Cómo medir la productividad del desarrollo con IA

Mi experiencia con agentes de codificación me lleva a medir el cambio validado, la revisión, la estabilidad y el retrabajo, no solo la velocidad.

AL

En mi trabajo con agentes de codificación he perdido más tiempo revisando cambios grandes que parecían terminados que validando una parte pequeña antes de continuar. Es uno de los aprendizajes que cuento al describir mi trabajo con agentes. Esa experiencia me llevó a dejar de confundir código generado o rapidez inicial con productividad. Cuando la mido, relaciono el cambio estable con el esfuerzo que me ha exigido y tengo en cuenta la calidad, el retrabajo y el recorrido completo. El tiempo hasta terminar importa, pero por sí solo mide latencia, no productividad.

No he realizado un experimento comparativo sobre productividad. Al revisar los estudios publicados, he encontrado resultados distintos porque observan tareas, poblaciones y herramientas diferentes. Por eso no convierto mi experiencia ni un porcentaje externo en una predicción para cualquier organización.

Los porcentajes discrepan porque no miden el mismo trabajo

La evidencia de METR, DORA, los experimentos de campo y el estudio de Anthropic sobre aprendizaje no me permite fijar un porcentaje universal de aceleración o ralentización. Cada diseño estudia poblaciones, herramientas, tareas y horizontes distintos.

Contexto observadoUnidad de trabajoResultado publicadoQué impide generalizarlo
METR, Early-2025 AI Experienced Open-Source Developer Study (10-07-2025): 16 especialistas y 246 tareas reales en proyectos que conocían bienTiempo hasta terminar una incidenciaLas tareas tardaron un 19 % más con IAMuestra pequeña, especialistas y repositorios maduros
Cui y otros, The Effects of Generative AI on High-Skilled Work, Management Science: tres experimentos de campoTareas completadas por desarrolladorMejora de productividad con asistentes de códigoProcesos, herramientas y definición de tarea propios de cada empresa
DORA, State of AI-assisted Software Development 2025: equipos de entrega de múltiples organizacionesRendimiento e inestabilidad del sistema de entregaLa IA amplifica capacidades existentes y puede elevar a la vez el rendimiento y la inestabilidadRelación observada en organizaciones, no causalidad para una tarea concreta
Anthropic, AI assistance and coding skills (2026): personas aprendiendo una biblioteca nuevaTiempo de tarea y dominio posteriorLigera reducción del tiempo, sin significación estadística y 17 puntos porcentuales menos de dominio (50 % frente a 67 %)Tarea de aprendizaje acotada, distinta del mantenimiento diario
METR, Uplift Update (24-02-2026): herramientas más recientes en proyectos realesTiempo de tareaSeñales de mejora, con estimación débilQuien acepta o rechaza usar IA introduce un sesgo difícil de eliminar

La tabla reúne trabajos distintos; no intento resolver sus diferencias escogiendo un ganador. En mi experiencia, el tamaño del cambio y cuánto conozco el sistema influyen en el esfuerzo que después me exige revisar e integrar una propuesta. Los estudios añaden otras poblaciones y tareas. La métrica que elijo decide qué parte de ese trabajo queda fuera.

Terminar antes solo demuestra rapidez. Para hablar de productividad hay que medir también defectos, horas de retrabajo y resultados entregados.

Cuando alguien me presenta un porcentaje para decidir una adopción, pregunto quién hizo el trabajo, qué tarea resolvió, cuándo se probó la herramienta y qué significaba «terminado». Sin esas respuestas, el número informa sobre un experimento y muy poco sobre la organización donde se quiere aplicar.

El código generado solo refleja una actividad local

En una herramienta de comprobación de contraste que preparé para mi blog, el resultado automático era 18,25:1 cuando el contraste real era 3,44:1. El cálculo leía los tres primeros valores del color y omitía el canal alfa. Las pruebas que había preparado terminaban correctamente, pero no comprobaban ese caso; Lighthouse detectó el fallo. No uso este episodio como una medida del efecto de la IA. Me sirve para explicar por qué una salida producida o una prueba superada no equivalen a un cambio validado.

Cuando valoro un cambio, todavía tengo que comprobar que encaja en el sistema, respeta los contratos existentes y puede mantenerse. La cantidad de código generado apenas describe ese trabajo.

Contar sugerencias aceptadas tampoco me serviría como medida. Una cifra alta puede reflejar que el asistente resuelve trabajo repetitivo y correcto o que la revisión es superficial. Para interpretarla tengo que mirar qué ocurre después.

Como unidad de análisis tomaría el cambio validado y estable, no el código que apareció primero. Para hablar de productividad lo relacionaría con el resultado que debía producir, el esfuerzo consumido y el coste de calidad. Así puedo mirar más allá de la actividad individual y valorar lo que consigue el sistema de entrega.

La unidad útil es el cambio validado y estable

Considero validado un cambio cuando cumple sus criterios, ha superado la revisión y puede desplegarse con la evidencia acordada. Lo considero estable cuando ha atravesado el periodo fijado para detectar regresiones inmediatas, alertas o retrabajo atribuible a ese cambio.

Fijaría la ventana de estabilidad antes de observar los resultados y la adaptaría a cada familia de trabajo. Podría abarcar, por ejemplo, 72 horas para un servicio con señales continuas o un ciclo completo para un proceso periódico. Marcaría como observación incompleta un cambio que aún no la haya completado; no lo contaría como estable ni lo eliminaría. También conservaría los defectos tardíos como una medida aparte, porque ninguna ventana breve puede capturarlos todos.

El recorrido completo tiene más tramos que la escritura:

requisito entendido
    → cambio propuesto
    → revisión
    → integración
    → despliegue
    → observación
    → cambio estable

La IA puede acortar el segundo tramo y alargar el tercero, o facilitar una prueba y hacer más difícil entender la implementación que la pasa. También puede reducir el tiempo hasta la primera propuesta a costa de más iteraciones antes de integrar. Por eso conservaría esas compensaciones en la medida completa.

No tomaría el despliegue como final automático. Un cambio que entra en producción y provoca una corrección urgente al día siguiente no tiene el mismo valor que otro que permanece estable. Adaptaría la ventana al producto, pero la mantendría fija durante la comparación para que dos cambios de la misma familia sean comparables.

Esta definición tampoco convierte toda contribución en un ticket. El diseño, la investigación, el soporte y la reducción de riesgo tienen otras salidas. La usaría para comparar cambios de software semejantes, que es donde veo que los indicadores de generación suelen utilizarse peor.

La supervisión también consume tiempo y atención

En mi trabajo con IA, parte del esfuerzo se desplaza desde escribir hacia dirigir, evaluar y corregir. Ese trabajo puede ser más valioso que teclear código, pero no es gratuito.

Una petición precisa me exige entender el problema y sus límites; al revisar la respuesta reconstruyo qué hizo el agente, qué omitió y qué supuestos introdujo. Si el resultado falla, decido si lo corrijo, lo devuelvo o cambio de enfoque. Cada ciclo consume atención y contexto que no puedo dedicar a otra tarea.

La carga aumenta cuando el cambio atraviesa muchos módulos o cuando la base de código contiene conocimiento tácito. Aunque el asistente lea miles de líneas, puede seguir sin conocer por qué existe una condición aparentemente redundante. Cuando conozco el repositorio, recuerdo el incidente o la restricción que la explica; si me falta esa historia, también puedo aceptar la simplificación y descubrir el motivo en producción.

Para entender la supervisión, registraría ciclos antes de revisión, tiempo de revisión, cambios solicitados, pruebas añadidas y correcciones posteriores. No mediría el número de mensajes: una conversación corta puede resolver una tarea simple o esconder una revisión pobre.

Medidas para no premiar actividad

Propondría siete medidas juntas porque ninguna basta de forma aislada. Las usaría para entender el trabajo, no para contar líneas ni clasificar personas.

MedidaDefinición operativaDato observableLectura equivocada que evita
Tiempo de flujo hasta cambio estableDesde que el trabajo entra en una cola acordada hasta que supera la ventana de estabilidadMarcas del gestor de trabajo, revisión, despliegue e incidenciasConfundir primera propuesta con finalización o esconder esperas
Esfuerzo activoTiempo humano dedicado a entender, producir, revisar, corregir y recuperarRegistro ligero por tarea o muestreo acordadoReducir calendario añadiendo capacidad y llamarlo productividad
Carga de revisiónAtención necesaria para comprender y aceptar el cambioTiempo de revisión, ciclos, comentarios sustanciales y pruebas añadidasConsiderar gratuita la supervisión
Estabilidad, riesgo y retrabajoTrabajo posterior atribuible al cambio, con severidad y exposiciónReversiones, correcciones, incidentes, tiempo de recuperación y defectos tardíosTratar igual una errata y una brecha o premiar entregas que trasladan el coste
Comprensión para mantenerOtra persona puede explicar y modificar el mecanismoRevisión explicada, tarea de cambio posterior o prueba de comprensiónAceptar código que solo entiende quien dirigió al agente
Flujo entregadoCambios estables por familia durante una ventana, junto con el trabajo en cursoConteo de resultados comparables y trabajo en cursoMejorar la latencia seleccionando solo tareas fáciles o acumulando trabajo
Resultado o valorCambio observable asociado al objetivo acordado antes del trabajoMétrica de producto o de resultado definida de antemanoEntregar muchos cambios correctos que no resuelven un problema importante
Muchas propuestas de código atraviesan revisión, validación, despliegue y un periodo de estabilidad antes de formar un único cambio terminado.

La productividad se mide al final del recorrido; la generación solo alimenta la primera etapa.

La productividad se mide al final del recorrido; la generación solo alimenta la primera etapa.

No agregaría las medidas en una puntuación. Una cifra única oculta la razón de la mejora. Si baja el tiempo y sube mucho el retrabajo, quien toma la decisión necesita ver ambos movimientos. Si aumenta la revisión y disminuyen las incidencias, puede haber una inversión razonable en calidad.

La comprensión es la medida menos cómoda y una de las más importantes, pero no requiere exámenes. Yo la comprobaría durante la revisión: quien mantiene el cambio explica el flujo, localiza los invariantes y propone cómo modificaría un caso relacionado. Si nadie puede hacerlo, la velocidad local ha creado una dependencia.

Cuándo cabe esperar una mejora y cuándo no

Mi hipótesis de partida es que la IA tiene más margen en tareas acotadas cuyo resultado puede comprobarse enseguida y que tienen criterios verificables. Migraciones mecánicas, generación de pruebas a partir de contratos claros, adaptadores repetitivos y cambios dentro de patrones bien establecidos permiten comprobar pronto si el resultado encaja.

El margen disminuye cuando el trabajo consiste en descubrir el problema, recuperar conocimiento tácito o decidir una arquitectura, y también en bases maduras donde una modificación pequeña puede romper contratos que no están documentados. En esos casos el agente produce una propuesta antes, pero la revisión concentra el coste.

Al valorar una tarea, separaría la entrega puntual del aprendizaje. Delegar la exploración puede ahorrar tiempo cuando importa terminarla; si también quiero que alguien domine una biblioteca o un dominio, aceptar una solución antes de construir el modelo mental puede perjudicar la tarea siguiente. Acordaría cuál de esos objetivos tiene prioridad antes de medir.

En mi trabajo, una especificación útil mejora las condiciones porque reduce supuestos y hace observables los criterios. No sustituye la comprensión ni la decisión de arquitectura.

Un piloto observacional de cuatro semanas

Propondría un piloto observacional de cuatro semanas para calibrar las medidas y aprender dónde encaja la IA. No lo usaría para atribuirle causalidad ni evaluar a cada desarrollador. Si una familia no reúne suficientes casos o no cubre su ciclo normal, ampliaría la ventana antes de decidir.

En la primera semana elegiría dos o tres familias comparables. Las distinguiría por tipo y tamaño del cambio, riesgo, módulos afectados y familiaridad con el código. También fijaría la ventana de estabilidad, el inicio y el final de cada medida y cómo atribuir el retrabajo. Dejaría escritos los criterios de inclusión y exclusión y publicaría cuántos casos quedan fuera y por qué. Una incidencia causada por el cambio nunca saldría de la muestra.

Durante las semanas segunda y tercera dejaría que cada persona decidiera en qué tareas usar la IA y anotaría esa decisión antes de empezar. Registraría las siete medidas junto con la familia, el riesgo, el tamaño, la familiaridad, la herramienta, el modelo, la versión, el tipo de uso, el coste, el tiempo activo y el motivo para usar o no IA. Esa autoselección se parece más al trabajo cotidiano, pero me impediría afirmar que la IA causó la diferencia.

Agregaría los datos por grupos con un mínimo de casos que evite identificar a una persona, acceso limitado y retención corta. No los usaría para clasificar individuos. Antes de empezar fijaría también qué código o datos no pueden enviarse a una herramienta, cómo proteger secretos y cómo revisar licencias, dependencias y vulnerabilidades.

En la cuarta semana revisaría casos, no solo promedios. ¿Dónde bajó el tiempo completo? ¿Qué cambios exigieron más revisión? ¿Apareció retrabajo? ¿La persona que mantuvo después el código pudo explicarlo? Compararía familias de tareas y conservaría las excepciones que contradijeran la tendencia.

Cuatro semanas no demuestran causalidad ni suelen ofrecer base para una inferencia estadística. Sí me servirían para detectar una medida inútil, una familia prometedora o un coste que habría pasado por alto. Si quisiera responder una pregunta causal, propondría otro diseño: asignación aleatoria, implantación por fases o tareas emparejadas con controles previos.

Con los resultados propondría una política acotada: usar la IA para transformaciones mecánicas y pruebas, exigir revisión adicional en interfaces públicas y reservar las tareas de aprendizaje para un modo en el que la herramienta formule preguntas, explique opciones y pida a la persona anticipar el siguiente paso antes de proponer la solución.

La decisión no sale de un umbral universal, pero tampoco la improvisaría después de ver los datos. Antes del piloto acordaría qué mejora considero material y qué degradación de riesgo, retrabajo o comprensión sería inaceptable. Ampliaría el uso cuando mejorase el resultado o el flujo sin aumentar el esfuerzo total ni empeorar la revisión, los incidentes o la comprensión. Lo mantendría acotado cuando el ahorro solo apareciera en familias concretas o exigiera una supervisión asumible. Lo detendría si el retrabajo, el riesgo o la pérdida de comprensión compensaran el tiempo ahorrado.

La decisión se revisa cuando cambia la herramienta o el trabajo

Una medición fechada describe una combinación concreta de personas, base de código, herramientas y tareas. Si cambia el modelo, el flujo de revisión o el tipo de trabajo, la conclusión puede dejar de servirme.

Mantendría un conjunto pequeño de indicadores y revisaría la decisión cada trimestre. Buscaría dónde aumenta el rendimiento y dónde se traslada trabajo a la revisión, la estabilización o el mantenimiento, en vez de usar los datos para justificar retrospectivamente la inversión.

La misma regla se aplica a la automatización fuera del desarrollo. El ahorro se calcula después de comprobar el resultado e incluir excepciones. La pieza sobre cómo verificar una automatización de IA desarrolla ese contrato.

Medir bien cambia la conversación. Con estas medidas propondría dejar de discutir solo si «la IA va más rápido» y decidir en qué tareas entrega cambios mejores con un coste total menor. Esa es la productividad que yo intentaría optimizar.

Conversar y compartir

¿Comentamos el artículo?

Escríbeme directamente para comentar cualquier punto técnico, compártelo si te ha parecido interesante o ábrelo en ChatGPT para contrastar ideas.

AL
Alberto Lara Hernández
Director tecnológico y arquitecto de sistemas de aprendizaje

Más de 22 años construyendo y evolucionando plataformas de aprendizaje en producción.

Sobre Alberto Lara y su trayectoria profesional →

Seguir leyendo