Menú

Únete al Programa: Los actuarios son ingenieros de software

Escrito por: 
Guy Brett-Robertson
9 julio, 2024 • 
6
 min de lectura

Resumen del artículo

Este artículo de The Actuary explora por qué la programación, aunque crucial para los actuarios, se considera una habilidad secundaria y escribir software una carrera diferente. Es hora de cambiar todo eso.
Inicio / Artículos / Únete al Programa: Los actuarios son ingenieros de software

La profesión actuarial está experimentando un proceso de modernización impulsado por la tecnología. A pesar de esto, muchos actuarios no están seguros de cómo mejorar sus habilidades tecnológicas y de programación, careciendo de mentores experimentados y de cualquier conocimiento de las mejores prácticas. Aquí hay una oportunidad valiosa para que los actuarios obtengan ideas de la ingeniería de software.

¿Por qué deberían los actuarios aprender de los ingenieros de software?

Los actuarios y sus partes interesadas comprenden cada vez más que el uso innovador de la tecnología es una forma de obtener una ventaja competitiva. Las herramientas y sistemas construidos con código pueden mejorar la eficiencia y reducir costos, entre muchos otros beneficios. Esto significa que la demanda de actuarios que puedan programar es más alta que nunca y seguirá aumentando.

Sin embargo, la mayoría de los actuarios solo tienen habilidades básicas de codificación, si es que tienen alguna. Esto no es sorprendente: el camino hacia la calificación deja poco espacio para aprender un lenguaje de programación a un nivel avanzado, y los actuarios que codifican son en gran parte autodidactas o lo han aprendido como una parte menor de un grado universitario. En estos entornos y en la mayoría de los equipos actuariales, raramente se enfoca en desarrollar software de grado de producción. En cambio, el código se utiliza típicamente para realizar actividades como análisis estadístico y visualización de datos, y tan rápido como sea posible.

Estos factores han llevado a una escasez de actuarios que sean codificadores altamente calificados y experimentados, algo revelado por la abundancia de sistemas heredados ineficientes y hojas de cálculo infladas encontradas en toda la profesión. Para tomar prestado el término de ingeniería de software, muchos negocios están plagados de ‘deuda técnica’, el costo acumulado implícito de tomar atajos.

Entonces, ¿a quién deberían mirar los actuarios para obtener orientación? La respuesta es clara: a los ingenieros de software, que usan código todos los días para diseñar, desarrollar, probar y mantener aplicaciones. En la práctica, esta visión no parece ampliamente aceptada por la comunidad actuarial; los equipos actuariales parecen reacios a reconocer su trabajo como software, incluso cuando consiste en herramientas escalables y reutilizables que están escritas en código. El trabajo actuarial y el software se consideran incorrectamente disciplinas separadas.

En cierta medida, esto es simplemente un problema de etiquetado, pero las etiquetas son importantes. Cuando eligen no describir su código como ‘software’, los actuarios se distancian del mundo tecnológico. Este no es el caso con la ciencia de datos. Se entiende bien que hay una superposición significativa entre el trabajo actuarial y el de datos. Ambos agregan valor comercial al encontrar insights en datos, y los actuarios son más ricos por esta colaboración.

Afortunadamente, los actuarios no necesitan un grado en ciencias de la computación para mejorar sus habilidades de codificación. El progreso y la innovación en la industria tecnológica han explotado durante las últimas décadas, marcados por una riqueza de información sobre cómo escribir un mejor código. Los actuarios pueden seleccionar de los recursos disponibles para ellos. Nunca ha habido un mejor momento para hacerlo.

Todo esto apunta a una conclusión clara: los actuarios interesados en la codificación deberían inclinarse hacia esta especialidad. Y buscar orientación en el mundo tecnológico más amplio, no solo en la ciencia de datos.

¿Qué pueden aprender los actuarios de los ingenieros de software?

No es factible intentar cubrir todas las áreas en las que los actuarios deberían enfocarse en términos de escribir software – es un conjunto de habilidades amplio que toma años de esfuerzo sostenido para desarrollar. Sin embargo, hay algunas áreas en las cuales los principiantes pueden hacer un progreso considerable con relativamente poca dificultad.

1. Piensa cuidadosamente sobre el diseño de tu programa.

Los principiantes tienden a escribir código en forma de un script largo, consistiendo en una serie de comandos a ser ejecutados en secuencia. Esto funciona para ejercicios exploratorios simples pero no es sostenible cuando la tarea se vuelve más compleja y no se presta bien para la integración con otros procesos o sistemas. No construirías una hoja de cálculo usando solo una hoja de trabajo – así que no trates de hacer todo en un solo script, particularmente cuando hay miles de líneas de código.

Mira los principios de diseño de software bien establecidos, que no son necesariamente difíciles de implementar. Un comienzo sería tomar secciones duplicadas de código y moverlas a funciones, o tomar secciones más grandes y crear módulos en archivos separados. La modularización tiene muchos beneficios – cada archivo, módulo y función pueden ser independientes, haciéndolos más fáciles de entender, probar, revisar y reutilizar en otras herramientas.

2. Usa un estilo de código consistente.

Esto se relaciona con el estilo y formato del código. Puede parecer superficial pero el código que es difícil de leer y entender es más propenso a errores, más difícil de actualizar y colaborar, y más probable que se vuelva obsoleto con el tiempo. Los actuarios entienden esto claramente cuando se trata de hojas de cálculo – una hoja de cálculo desordenada con parámetros codificados en lugares incorrectos no es probable que pase el proceso de revisión actuarial. Igualmente, el código que no tiene comentarios y un nombramiento inconsistente, por ejemplo, no debería ser aceptado.

El estilo de código es una de las cosas más fáciles de mejorar – simplemente selecciona una guía de estilo publicada y alinea tu código con sus principios. Hay muchas guías de estilo disponibles en línea, como PEP8 para Python y tidyverse para R.

3. Agrega valor a través de la calidad del código.

Los actuarios tienden a tener una concepción estrecha de qué significa ‘bueno’ al crear una herramienta usando código. A menudo implementan la primera (y quizás única) solución que se les ocurre, verifican que funcione en su caso de uso y avanzan. Este enfoque tiende a funcionar solo a corto plazo.

Probar la corrección es necesario pero no suficiente para soluciones a largo plazo. Hay muchos factores a considerar, incluyendo la portabilidad, usabilidad, simplicidad, escalabilidad, tiempo de ejecución, uso de memoria y consistencia con precedentes. El buen software se escribe considerando primero los requisitos y restricciones de la tarea, luego creando una solución que esté optimizada para los factores más relevantes. Esto toma tiempo, esfuerzo y empatía. Siempre es tentador escribir una solución rápida y sucia, pero esto solo pasa la carga a aquellos que tendrán que usar el código en el futuro.

Aprender a escribir mejor código no necesariamente significa entender algoritmos difíciles o estructuras de datos complejas.

Muchas de las mejores prácticas son fáciles de implementar – invaluables y bien entendidas por los ingenieros de software, pero a menudo ignoradas por los actuarios.

¿Cómo pueden los actuarios aprender de los ingenieros de software?

Hay un factor clave necesario para que un actuario se convierta en un codificador experto: un interés genuino en aprender. En términos de pasos concretos, hay cuatro áreas en las que los actuarios pueden trabajar.

Absorber

Tomar cursos, asistir a conferencias (fuera de la profesión actuarial), leer libros, blogs y documentación en línea, y ver videos tutoriales. Esto puede darte la confianza para empezar. Sin embargo, aprender material nuevo o lenguajes de programación no es solo para principiantes – todos estamos en un viaje de aprendizaje continuo, y los expertos tienen más probabilidades de saber exactamente qué buscar en Google (o preguntar a ChatGPT) que de haber memorizado toda la sintaxis.

Practicar

El aprendizaje pasivo es un buen comienzo necesario, pero solo te llevará hasta cierto punto; todo lo que no se ponga en práctica será olvidado. Implementar activamente lo aprendido en una situación real es la mejor manera de mejorar tu juicio y habilidades de resolución de problemas. Los actuarios también pueden abordar ejercicios de codificación, intentar un proyecto de aprendizaje automático o incluso contribuir a software de código abierto.

Digerir

Sin recibir retroalimentación sobre su código, un actuario puede pasar toda su carrera sin darse cuenta de que el ‘== TRUE’ en ‘if (condition == TRUE)’ es obsoleto. Este es un ejemplo trivial pero destaca el hecho de que aquellos que no buscan retroalimentación completa sobre su código están limitando su potencial. Y pensar en la retroalimentación no debería ser un ejercicio superficial – es un paso crucial requerido para que un actuario mejore.

Refinar

Es útil reconocer que la primera solución escrita casi nunca es la mejor, por lo que es una buena práctica reescribir y refactorizar. Esta es una habilidad que debe ser cultivada, y una buena manera de desarrollarla es escribir tantas soluciones a un único problema como sea posible.

Por ejemplo, la función factorial puede implementarse en código usando iteración, recursión y vectorización. Cada método tiene sus ventajas y desventajas, y estas solo pueden ser completamente apreciadas cuando han sido utilizadas.

Cuestiones de toda la profesión

Todavía hay barreras que la profesión necesita superar. Pocos graduados en ciencias de la computación eligen una carrera actuarial, lo que significa que la profesión no está reclutando de un grupo de candidatos que tienen habilidades tecnológicas valiosas. Además, muchos todavía consideran la programación una especialidad de nicho, en lugar de un elemento central del futuro conjunto de habilidades actuarial. Hasta que estas actitudes cambien, los actuarios no se darán cuenta del pleno potencial que la tecnología puede aportar.

Este artículo fue reimpreso para RGA Knowledge Center con permiso de The Actuary. La versión en inglés puede consultarse aquí.

Artículos relacionados

1 2 3 78

Conoce a los autores y expertos

¡Entérate sobre nuestros próximos eventos o webinars!

Introduce tus datos para recibir información sobre nuestros próximos eventos y poder asegurar tu lugar.

    crossmenu