Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

clarify scope of central RSE unit #112

Merged
merged 18 commits into from
Feb 13, 2025
Merged
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
44 changes: 23 additions & 21 deletions paper.tex
Original file line number Diff line number Diff line change
Expand Up @@ -73,7 +73,8 @@ \section{Introduction}
\textbf{Research software engineers:}\\
People who create or improve research software and/or the structures that the software interacts with the computational ecosystem of a research domain.
They are highly skilled team members who may also conduct their own research as part of their role.
However, we also recognise RSEs who have chosen to focus on a technical role as an alternative to a traditional research role.\\
However, we also recognise RSEs who have chosen to focus on a technical role as an alternative to a traditional research role.
We call RSEs who are members of the RSE hub (see below) dedicated RSEs. RSEs who are members of a research group are called embedded RSEs.\\
\textbf{Researchers:}\\
RSEs might also be researchers.
However, for the lack of a proper term and to avoid many “non-RSE researchers” within the text, we will refer by “researchers” to all non-RSEs involved in research or in research supporting organisations such as in \eg{} libraries, hence those that are at most sporadically performing RSE actions.\\
Expand All @@ -82,6 +83,7 @@ \section{Introduction}
These RSE Hubs can take the form of, \eg{} full RSE units, smaller RSE groups, Open Source Program Offices (OSPOs), virtually across multiple units or combined under single leadership,
depending on the environment of the hosting research organisation.
All of these implementations are considered, taking into account the large variety of research environments in Germany which include not only universities, but also research consortia and other research performing organisations.
We use the term central \emph{RSE unit} interchangeably with the term \emph{RSE hub} even though for large federated research organisations there might be a more complex arrangement such as a network of RSE hubs.

\section{Motivation for central RSE units}
\begin{quotation}
Expand Down Expand Up @@ -257,30 +259,30 @@ \section{Vision}%
Thus, it is likely that no two RSE units will be, or should be, alike.
However, these nine modules together with assumed weights are part of a simple model of an RSE group which provides both a quick overview of an individual group as well as a way to compare groups.
The nine modules are described below.
\todo{FL:\@ Introduce the hub-spokes terminology.}

\subsection{Module 1: Foster a local Network of RSEs}%
\label{sec:network}

One of the core responsibilities of an RSE unit is to act as a coordinator of RSE activities within the institution.
At virtually every academic institution there are employees that assume at least part-time the role of an RSE.
One of the core responsibilities of an RSE unit is to act as a coordinator of RSE activities across the institution.
Research software is an integral part of modern research.
There are, therefore, researchers in every institution that at least sometimes perform the tasks of an RSE. We call these RSEs embedded RSEs.
These RSEs typically work isolated from similar RSEs in different groups, within the same institution.
A central RSE unit provides a condensation core and connects RSEs in spokes with each other and with those at the hub.
The central RSE unit together with the embedded RSEs form a hub and spokes network.

Connecting RSEs in spokes has multiple, positive effects, both for them as well as for the organisation.
Connecting embedded RSEs has multiple, positive effects, both for them as well as for the organisation:
It will enable them to get to know others in similar situations and to learn from as well as support each other.
Contact with the central RSE unit will also help RSEs to professionalise their software-related work, which will directly benefit not only themselves but also their research groups.
In addition, the networking opportunities allow the distribution of knowledge about tools and resources within network partners, including the central RSE unit.
There are many RSE skills for which mastering can take many years; time that a part-time RSE usually can not spare.
A central RSE unit can make sure to connect RSEs in spokes to others with the relevant expertise or offer it themselves.
Fostering the network also enables the RSE unit to monitor institutional RSE activities, thereby providing the insight necessary to prevent duplication of work and support synergies.
Embedded RSEs can ask a central RSE unit for advice on specific problems.
They can also pass some tasks to the central RSE unit if they lack the knowledge or resources to solve those themselves.
Contact with the central RSE unit also helps RSEs to professionalise their software-related work, which will directly benefit not only themselves but also their research groups.
Additionally, the networking opportunities allow the distribution of knowledge about tools and resources within the network.
Information also flows from the embedded RSEs to the central RSE unit allowing it to discover common requirements and opportunities to centralise some services.

How an RSE unit realises this task will depend heavily on its environment and resources.
We only mention a few examples here to provide inspiration, with the explicit claim of incompleteness.
These include talks, seminars, workshops, meet-ups, hackathons, as well as informal regulars' tables.
As a foundation, a central RSE unit employs experienced RSEs, mostly at the post-doctoral level, who are not only expert software engineers, but also good communicators with the ability to work interdisciplinarily.
We only mention a few examples here to provide inspiration, with the explicit claim of incompleteness:
talks, seminars, workshops, hackathons, as well as informal meet-ups all facilitate establishing a local network of RSEs.
As a foundation, a central RSE unit employs experienced RSEs, mostly at the post-doctoral level, who are not only expert software engineers, but also good communicators with the ability to work in interdisciplinary teams.
At least a core of a central RSE unit's employees need to have permanent contracts to be able to offer that deep expertise that requires years of experience.
Moreover, an onboarding process can serve as an entry point for new RSEs, whether in the hub or in spokes, into an institution's network.
Moreover, an onboarding process can serve as an entry point for new RSEs, whether in the central RSE unit or as an embedded RSE, into an institution's network.
This gives an opportunity to gauge how the new colleague can benefit from the RSE unit's teaching services and whom they might want to network with based on their planned work.
Similarly an off-boarding process can help to make sure that all acquired knowledge that is relevant to the institution is passed on to someone who stays, even if possibly not within the specific research group.

Expand Down Expand Up @@ -324,7 +326,7 @@ \subsection{Module 3: Development Services}%
With the leverage of these projects being usually very high, realising as many of them as possible gives a great boost to the research institution.
Many existing RSE units (\eg{} Manchester, Heidelberg) offer this type of small scale service free of charge and use it to promote their services within the institution.

For research projects requiring more substantial software development resources, an RSE unit could --- either through the hub or its spokes --- provide the required developer capacity.
For research projects requiring more substantial software development resources, an RSE unit could --- either through central or embedded RSEs --- provide the required developer capacity.
This is especially relevant if the researchers hired for the research projects do not have the required software development skills and the volume of the development is too small to hire a dedicated developer.
Depending on the scale of the involvement, the RSE unit can either be included into the grant proposal via a co-PI or as an internal service provider.

Expand All @@ -335,7 +337,7 @@ \subsection{Module 3: Development Services}%
This applies both to domain-specific research software (\eg{} simulation frameworks widely used throughout the institution)
and to domain-agnostic software and data infrastructure (\eg{} Jupyter, workflow management systems, data repository software).

While all of the above development services can be flexibly performed either at the RSE hub or its spokes, there are advantages of having a hub in the process:
While all of the above development services can be flexibly performed either at the central RSE unit or by embedded RSEs, there are advantages of having a hub in the process:
It allows building up highly specialised technical expertise with a long term perspective and reuse it across the entire institution.
Examples of topics that would benefit from such expertise pooling are \eg{} mobile app development and UI/UX development.

Expand Down Expand Up @@ -363,7 +365,7 @@ \subsection{Module 3: Development Services}%
\subsection{Module 4: Teaching Services}%
\label{sec:teaching}

A central RSE unit can provide or organise training for researchers and RSEs in spokes.
A central RSE unit can provide or organise training for researchers and embedded RSEs.
This can replace self-education for foundational software development skills and provide a basis from which researchers can continue to learn more specialised skills guided by experts of the central RSE unit.
Since teaching material for foundational software development skills is freely available,
the tasks remaining for a central RSE unit are to adapt the material to local requirements as well as to organise and hold courses and workshops.
Expand Down Expand Up @@ -416,9 +418,9 @@ \subsection{Module 6: RSE Infrastructure Provisioning}%
However, a central RSE unit can provide extra services by acting as an intermediary for RSE infrastructure and by hosting pilot instances of new tools and services.
IT departments typically only provide the service for hosting and accessing IT infrastructures, such as RSE infrastructures.
Central RSE units are a link between the central services offered either by IT units or over-archingly available services on one side,
and RSEs in spokes on the other, offering documentation, training and best-practices to efficiently and effectively use available services and comply with established processes.
and embedded RSEs on the other, offering documentation, training and best-practices to efficiently and effectively use available services and comply with established processes.

Furthermore, the central RSE unit can offer consulting for RSEs in spokes to guide selection processes of the tools and services best suited for each project.
Furthermore, the central RSE unit can offer consulting for embedded RSEs to guide selection processes of the tools and services best suited for each project.
This holds for existing RSE, or more general IT, infrastructure.
However, as scientists are working, by definition, at the cutting edge, they will often need or want to use the newest tools.
When such a need is identified in the course of a consultation, a central RSE unit can set up and provide access to pilot instances to evaluate these tools.
Expand All @@ -428,7 +430,7 @@ \subsection{Module 6: RSE Infrastructure Provisioning}%
On the contrary, the RSE unit should act as a multiplier for the RSE-relevant services offered by the IT unit, helping RSEs to discover and use existing and upcoming services.
Similarly, the RSE unit can promote the use of the available computing infrastructure provided by an IT unit, helping with the support of the users when RSE-related questions in this context arise.
Once the mutual collaboration between an RSE unit and an IT unit has been established, a stricter policy-based involvement of the RSE unit for infrastructure requests is envisioned.
Overall, by acting as an intermediary for RSE infrastructure related requests, the central RSE unit can augment the central IT unit, providing RSEs in spokes with the specific support they require.
Overall, by acting as an intermediary for RSE infrastructure related requests, the central RSE unit can augment the central IT unit, providing embedded RSEs with the specific support they require.

\subsection{Module 7: Research Software Engineering Research}%
\label{sec:rseresearch}
Expand Down
Loading