Desafío Top Coder de 8090's

Publicación original de LinkedIn
Repositorio de GitHub del proyecto

El viernes por la noche, vi una publicación pública en Twitter/X de Chamath Palihapitiya anunciando un Desafío Top Coder abierto organizado por su nueva empresa, 8090 Solutions. Cualquiera podía unirse. El desafío tendría lugar al día siguiente, duraría solo 8 horas e implicaría ingeniería inversa de un sistema heredado de caja negra utilizando únicamente datos históricos y unas pocas entrevistas con empleados.

¡Decidí participar!

Al final del día, me sentí honrado de quedar 7.º entre 425 ingenieros. Puedes consultar la clasificación AQUÍ y consultar el código de este desafío AQUÍ. Pero no mentiré: sinceramente, solo esperaba terminar algo dentro de ese corto período de tiempo, así que aparecer en la clasificación fue una sorpresa y una gran victoria personal para mí.

El desafío era individual, y el objetivo era replicar un sistema de reembolso de viajes de caja negra de 60 años de antigüedad que no tenía código fuente ni documentación. Se nos proporcionaron varios artefactos, incluidos un resumen del producto, transcripciones de entrevistas con empleados y un conjunto de datos público que contenía 1,000 ejemplos históricos de entradas y salidas esperadas. A partir de eso, tuve que inferir la lógica de negocio detrás de cómo se calculaban los importes de reembolso e implementar una versión moderna que pudiera producir los mismos resultados lo más fielmente posible. Las entregas se evaluaron en un conjunto de datos oculto separado que contenía 5,000 casos de prueba en lugar de los 1,000 originales. Este conjunto privado más grande fue el que, en última instancia, determinó tu puntuación y clasificación finales. El sistema de puntuación recompensaba la precisión, donde una puntuación más baja significaba que tu solución coincidía más estrechamente con el comportamiento oculto del sistema original.

Para abordar la incertidumbre y los patrones en los datos, utilicé técnicas clásicas de aprendizaje automático junto con heurísticas básicas y lógica programática. Fue una cuidadosa mezcla de análisis de datos, modelado de características y aproximación de reglas basada en pistas imperfectas.

Esta fue mi puntuación de eval para el conjunto de datos público de 1,000:

✅ Resumen de evaluación
------------------------
  Casos totales     : 1000
  Coincidencias exactas (<$0.01): 0
  Coincidencias cercanas (<$1.00): 17
  Error promedio    : $31.15
  Puntuación        : 3214.93

Desarrollar una solución para un desafío así en 8 horas habría sido casi imposible sin la ayuda de herramientas impulsadas por IA que facilitaron explorar, integrar y probar ideas rápidamente.

Se sintió como arqueología de software combinada con un sprint de programación en vivo. Fácilmente uno de los desafíos técnicos más intensos y gratificantes que he realizado.

Gracias a Chamath Palihapitiya y Arjun Krishna por organizar un desafío tan creativo e inspirador.

Enlaces: