Saltar al contenido

Expandiendo colaboraciones en Ingeniería de Software de Investigación

Durante la última década, trabajé con investigación y software en múltiples roles. Noté necesidades comunes y aprendí de qué forma profesionales como yo podemos ayudar. Ya sea que trabajes en el ámbito académico o no, si necesitas software para cualquier tipo de investigación, este artículo es para vos. Basado en mis últimos diez años de experiencia, voy a compartir las necesidades que ví, y voy a argumentar que una forma rentable de satisfacer esas necesidades es a través del apoyo temporal de un equipo externo de Ingenieros e Ingenieras de Software de Investigación (RSEs, por sus siglas en inglés). El resultado es mejor software y mejor investigación.

Mi experiencia

Desde universidades hasta centros de investigación aplicada, en la última década desarrollé Software de Investigación en múltiples proyectos:

  1. Mi doctorado en UQ,
  2. Un postdoctorado en STRI,
  3. ForestGEO en el Smithsonian NMNH,
  4. PACTA for Banks en Theia Finance Labs (ahora en RMI), y
  5. TILT, también en Theia Finance Labs.

Aprendí que a pesar de los grandes esfuerzos la mayoría de los proyectos enfrentan objetivos poco claros, flujos de trabajo ineficientes y retrasos.

También ayudé a investigadores e investigadoras a desarrollar software por sí mismos: a) como instructor para The Carpentries, b) como editor asociado del programa de revisión de software de rOpenSci, y c) como mentor del programa de campeonas y campeones de rOpenSci. Noté que incluso las personas más experimentadas se benefician de capacitación y apoyo empático.

Ahora estoy en ixpantia, combinando todo lo que aprendí. Junto a colegas con experiencias diversas estoy ayudando a grupos de investigación a llevar su trabajo al siguiente nivel. Como dijo Simon Hettrick (Director de Estrategia en el Software Sustainability Institute) "una Ingeniera de Software de Investigación que haya aprendido las mejores ideas de la industria y la academia será un beneficio para ambos ámbitos".

Pero, ¿RSE es algo nuevo?

El campo de RSE no es realmente algo nuevo. Los profesionales de RSEs están en todas partes, aunque quizás no hayas escuchado ese término específico. Resumamos la historia (no tan breve) de la Ingenieria de Software de Investigación.

El término RSE nació en 2012 durante una reunión en el Queen's College Oxford, donde un grupo de académicos abordaron la falta de trayectorias profesionales para quienes desarrollan software en la investigación. Este grupo acuñó el término RSE para destacar la importancia de que estos profesionales tengan experiencia tanto en software como en investigación. Pronto iniciaron campañas, talleres y publicaciones para crear conciencia y construir una comunidad. Instituciones como UCL y la Universidad de Manchester lideraron el camino creando los primeros grupos de software de investigación, ofreciendo apoyo escalable y rentable para los RSE, y brindándoles carreras estables. Con el respaldo de Microsoft, Google y otros líderes de la industria, el movimiento demostró que el software bien diseñado es fundamental para avanzar en la investigación.

Un movimiento relacionado fue el de las Oficinas de Programas de Código Abierto (OSPOs, por sus siglas en inglés). Una OSPO es una oficina dedicada dentro de una organización que gestiona y promueve el uso de software de código abierto. Sus funciones principales incluyen coordinar contribuciones a proyectos de código abierto y fomentar una cultura de colaboración.

Las primeras OSPOs surgieron a principios de los años 2000, a medida que el software de código abierto se popularizaba. Comenzaron en empresas tecnológicas de EE. UU. y Europa y se extendieron a diversas regiones e industrias. Hoy en día las OSPOs se encuentran en todo el mundo, desde empresas como Google hasta instituciones académicas como la Universidad de California.

Gracias a los RSEs y las OSPOs, hoy por hoy los investigadores e investigadoras tienen excelentes recursos a su disposición.

¿Cómo podemos ayudar?

En ixpantia, estamos listos para ayudar. Nuestro equipo combina experiencia tanto en el ámbito académico como en la industria. Estamos en una posición ideal para ofrecerte un amplio espacio de soluciones. Nuestro servicio abarca todo el ciclo de vida de proyectos de investigación: diseño, implementación, pruebas y mantenimiento de software, como así también capacitación, mentoría y retroalimentación para equipos.

Concretamente, estas son algunas formas en que podemos ayudarte:

  • Empaquetado: Podemos transformar tu código en paquetes de software robustos en R o Python para hacer que la investigación sea reproducible y más fácil de publicar.
  • Optimización del flujo de trabajo: Podemos ayudarte a mejorar la eficiencia y organización de tus proyectos con herramientas modernas para la gestión de versiones tu código, integración y despliegue de aplicaciones (CI/CD), y manejo de dependencias.
  • Entrenamiento en Software Carpentry: Podemos capacitar a tu equipo en las habilidades de programación que más valor aportan a tu investigación.
  • Revisión de Software: Podemos revisar tu software utilizando los estándares desarrollados por rOpenSci y pyOpenSci.
  • Mentoría: Podemos acompañar a los nuevos miembros de tu equipo, y ayudarte a elegir el software adecuado—como un lenguaje de programación, un entorno de desarrollo integrado (IDE) y un proveedor de servicios en la nube.

Conclusión

Muchos otros investigadores e investigadoras tienen las mismas necesidades que vos. Los RSEs pueden ayudarte, desde dentro o fuera de tu institución. En ixpantia, contamos con RSEs con mucha experiencia tanto en la academia como en la industria. Contactanos para planear la forma más rentable de agregar valor a tu investigación.