The use of software is fundamental across research disciplines, with a need for ever more sophisticated modelling, simulation and data analytics to answer progressively complex problems. The demand for new and reliable software has, in turn, led to the realisation that people with a specific set of skills that combine the research knowledge and software engineering – research software engineers – are needed to provide this.
The importance of the role of a research software engineer (RSE) is becoming more and more apparent as researchers are not only looking for new approaches and improved quality and sustainability of research software, but also for software that enhances the research it supports.
Despite this, there is still work to do to increase awareness of RSEs in the research community. Typically, RSEs work alone or in small groups and are hidden behind the scientific research, where the main focus is on the discoveries rather than the processes and software used to get results.
Dr Alejandra Gonzalez-Beltran is a Fellow of the Software Sustainability Institute (SSI) and a member of the Society of Software Engineering. She also leads Scientific Computing's Data and Software Engineering Group at the Science and Technology Facilities Council. In the past couple of years she has participated in a number of international meetings, conferences and workshops exploring the many challenges facing RSEs, and providing solutions and guidance for the RSE communities. These activities have led to a number of articles and blog posts being produced.
Alejandra contributed to 'Evidence for the importance of research software', which analyses work evidencing the importance of RSEs to research outcomes, and to enable the community to find useful evidence to share with key influencers. It reports on some of the approaches she and her colleagues in the Research Software Alliance (ReSA) have used to bring research software communities together for collaborative projects, and to look at how to expand efforts for a more global scope. ReSA's vision is to bring research software communities together, and to have research software recognised and valued as a fundamental and vital component of research worldwide. In this blog post Alejandra explains how she and her colleagues came together to map the community landscape.
The 'RSELondonSouthEast 2020' workshop provided a perfect opportunity to discuss thoughts and ideas around specific aspects of RSE challenges. The 100+ participants focussed on four areas that they believe cover the full breadth of the RSE domain - policy, training, community, and software development.
“We looked at each of these areas in detail to identify the most important aspects, developing a 'wish-list' of areas where change is needed," said Alejandra. “These include specifying funds for software maintenance in grant applications, job stability and progression, and recognition of RSE outputs. We also recommend the creation of an 'RSE Ambassadors' network to help support and grow RSE communities."
She added, “There are many challenges ahead, but also many opportunities for growth, for new training and for policy development."
At the 2nd International RSE Leaders' Workshop Alejandra and like-minded colleagues explored some of the new challenges facing RSEs as demand for their services boom. One of these is the likelihood that a single RSE may quickly find themselves managing a whole group of RSE staff that, because of their novel roles, don't fit into the relatively rigid team structures of traditional academia. How should a fledgling group leader organise and manage their group? What approach should they take and what are the pitfalls? Read more about how RSE groups work and the recommendations made during the Workshop.
Vital tools for RSEs are scientific software registries (indexes of software stored elsewhere) and repositories (a resource for both indexing and storing software) which serve various roles. These resources improve software discoverability and research transparency, provide information for software citations, foster preservation of computational methods, and thereby support research reproducibility and replicability. However, developing these resources takes effort, and few guidelines are available to help prospective creators of registries and repositories.
To address this need Alejandra joined colleagues from Europe and the USA in a Task Force for Best Practices on Registries to produce “Nine Best Practices for Research Software Registries and Repositories: A Concise Guide". The guide covers a set of practices that can help managers define the scope, practices, and rules that govern individual registries and repositories.
“We believe that putting in place specific guidance such as that presented here will help scientific software registries and repositories better serve their users and their disciplines," said Alejandra.
The guide includes practices that ensure people are given due credit for their work, and highlights considerations such as crediting software testers and other support roles.
A recent blog post, published by the Software Sustainability Institute in August 2021, explains why software registries and repositories are important, why the Task Force members wanted to create a list of best practices for them, what they include, the process the group followed and what the next steps will be for this community.
This group had a very diverse range of people with different perspectives representing a heterogeneous set of resources, but came together for the common goal of creating a list of best practices for scientific software registries. These shared practices help to raise awareness of software as a research output, enable credit for software creators, and guide curators working on software catalogues through the steps to consider when setting up their software registries. In the longer term, they hope to improve the interoperability of the software metadata supported by different services.