Code competencies for science

Recommendations for the German Academic System

InformatikFestival2025 - 16.09.2025


Dr. Adina Wagner
doi.org/10.5281/zenodo.17119633
files.inm7.de/adina/talk-FSKomp

The status quo

  • Software competencies are indispensable in digital science and desirable throughout the academic hierarchy.
  • Learning and research environments do not necessarily foster digital competence. Some are exemplary; others are lacking behind.
  • Actors in the academic system have different leverage to increase digital competence.

The workshop

  • 6 central topics: research data management, libraries, high performance computing, open science, computing centers, continuing training centers
  • 1 expert per topic, plus 2-3 invitees from their network
  • Public call for participation via deRSE mailing list

Our recommendations

Target groups


Teachers

Developers

Academic
leads

Local
infrastructure

Major
infrastructure

Associations &
interest groups

Institutional leads

Funding bodies

Policy makers

Providing Learning Opportunities

Teach open science!

Recommend digital tools for self-study to students

Use open educational resources (OER)

Create formats for learners without a community

Educate yourselves

Be a mentor

Include digital skills early in curricula

Make courses on digital competencies visible

Make use of your networks

Lower the threshold to attend

Educate yourselves

Teach advanced skills, too

Require open availability of educational resources

Assess and communicate needs

Retain and train teaching talent

Fostering the RSE Communities

Ease entry into existing communities

Find and tell RSE stories

Do RSE things and talk about them

Create central resources

Connect yourself and your staff

Help RSE stories get more reach

Finance RSE PR

Identify, support, and connect multiplicators and champions

Create entry points

Champions Multiplicators
  • Scientists; domain experts in their field
  • Support RSE topics as role model/ambassador and advocate within the system
  • Work as RSE or close to RSEs
  • Examples: Professors, Data/Software Stewards, individual scientists, ... with strong connections to RSE topics
  • Central and first contact within RSE networks
  • Identify and boost relevant topics
  • Spread knowledge
  • Foster interdisciplinary interactions and networks
  • Make research software more visible
  • Individuals but also groups/initiatives/associations
  • social > technical skills

Establishing frameworks & incentives

Demand local software guidelines

Value digital competencies

Create a culture of constructive criticism

Be aware of resource needs

Promote and require skill building

Lobby for RSE

On- and off-board with RSE in mind

Allocate resources for digital skills

Ensure digital competence in review panels

Create career paths

Increase subjective attractiveness

Increase objective attractiveness

Use RSE KPIs

Develop, implement, and share policies

Create support for software policies

get them
as a poster:

Get involved

The recommendations in detail

Teach open science!

Open science should be incorporated into teaching - both theoretical and practical knowledge. Start by reflecting on the (digital) skills that are covered in existing courses, as well as the tools that support this. Wherever possible, base teaching on open software tools (FOSS/FLOSS) and justify why these are preferred, e.g., with "public money, public code."

Recommend digital tools for self-study to students

Mention the digital tools used in the practical application of lecture content in the recommended reading list, e.g., in lecture notes. This gives students ideas about what is interesting and relevant for self-study in addition to the lecture.

Use open educational resources (OER)

Make use of freely available materials, such as open educational resources (OER), especially for teaching digital skills. Examples in the area of research software skills: The Carpentries, CodeRefinery, Elixir, INTERSECT, UniverseHPC, or "The Missing Semester of your CS education". They make their materials available under a reusable open license and are open to collaboration and contributions.

Educate yourselves

Attend "train-the-trainer" workshops on digital skill teaching to ensure and further improve the quality of the courses.

Create formats for learners without a community

Provide learning opportunities for self-study and exchange, such as wikis, online forums, or chat channels for research software developers without a local RSE network. Offer practical formats such as hackathons, Advent of Code, or code katas to make the learning process interactive and promote direct contact with the community. Encourage active participation in the community, for example through peer coding, mentoring, or moderating discussion forums.

Be a mentor

Be a mentor on digital competencies if you are digitally competent yourself. Onboard mentees into digital work processes or tools in the context of scientific work, identify relevant digital skills in mentees and encouraging them to acquire these skills, or integrate them into relevant offerings and networks.

Include digital skills early in curricula

Make courses on digital skills available in curricula and mention them in sample study plans. Consider mandatory participation if a sufficient proportion of students need the digital skill during their studies. Offer courses on general skills in interdisciplinary key qualification courses or for subject-specific target groups. Include both general introductory courses (e.g., version control, literature management) and specialized courses (e.g., HPC systems, data management).

Make courses on digital competencies visible

Make courses visible and easily accessible, and students aware of relevant digital skills. Advertise existing courses as early as possible within programs, and use introductory and informational events prior to specific coursework or internships to once again draw attention to available offerings.

Make use of your networks

Since service providers such as academic libraries or computing centers operate across disciplines, these structures should facilitate cooperation between different actors in the field of research software or for creating cross-references. Involve all central institutions and the networks of infrastructure providers beyond local actors to develop federated offerings and bundle existing competencies on a supraregional basis.

Lower the threshold to attend

Break down barriers between subjects by tailoring their course offerings to specific target groups, even if the content is interdisciplinary. Share the results of target group evaluations with relevant stakeholders in the field of RSEng to tailor course offerings effectively. Extend your advertising and public image to include the topic of software competence.

Educate yourselves

Internal trainings should incorporate RSEng topics. If there is an urgent need for training in research software skills in one department, and at the same time there is an existing offering in another department, resources can be pooled and teachers can be "loaned out". This ensures efficient use of resources within the organization, establishes a broad base of expertise and promotes the various fields of work in the RSEng area.

Teach advanced skills, too

Provide advanced formats such as "bring your own code" hackathons to further develop concrete projects with the support of experts. Bridge the gap between theory and empiricism with training courses directly related to one's own research domain. Manage expectations: focus on empowering researchers to act independently and transfer their findings to their own research environment, define and communicate limits of support as early as possible to set realistic goals and avoid disappointment.

Require open availability of educational resources

In the evaluation of projects, ensure that developed teaching materials shall be made available as Open Educational Resources (OER), and check compliance at the end of the project. Implement consequences for failure to comply, for example on later applications.

Assess and communicate needs

Actively participate in and contribute to needs assessments. Providers should interact with researchers, teachers, and students to identify the specific needs of different disciplines and tailor their offerings accordingly. Recipients of these offerings should proactively communicate their needs and accept the offerings.

Retain and train teaching talent

All target groups that prepare learning opportunities should ensure that there are enough people within their department or institution with the software skills to be taught. To this end, they should offer continuing education opportunities for teachers and interested parties (“train-the-trainer”) to ensure sufficient new talent.

Ease entry into existing communities

Minimize the barriers to entry to attract researchers to the community. Promote direct contact with the community with personal contact through designated contact persons (e.g., champions) or mentoring programs; digital tools such as wikis, online forums, or chat channels; the organization of practical formats such as hackathons, “Advent of Code,” or code katas.

Find and tell RSE stories

Present success stories from RSEs (“RSE stories”) or case studies with clear challenges, solutions, and results (“case studies”) to motivate young researchers and institutional decision-makers to commit to developing research software skills. RSE champions can organize and share perspectives from the story's main characters who share their experiences with research software.

Do RSE things and talk about them

Make “RSE stories” accessible to a broad public and the research community by using social media. The target audience for these stories is not only researchers and decision-makers, but also young scientists who can be inspired by these stories to take an interest in RSEng topics.

Create central resources

An overview of resources, networks, or materials offers added value for both well-connected and non-connected actors. It would be useful, for example, to create a central website with success stories (e.g., a collection of policies or research software) from RSE networks.

Connect yourself and your staff

Use your institutional knowledge about existing offerings or the availability of experts in digital skills within the institution to mentor employees, integrate them into networks, promote existing services, and act as multipliers for digital research skills. Identify and promote champions for digital methods and research software within their teams. If you yet lack the appropriate networks, identify existing networks.

Help RSE stories get more reach

Communication teams can support “RSE stories” or “case studies” from RSEs by sharing them on social media and other platforms or distributing them in the form of press releases. In addition, a new RSEng journal could be established to publish success stories and horror stories (equivalent to Data Scarytales) in the form of story-based publications and repositories.

Finance RSE PR

By financing PR work, social media campaigns, and content production, “RSE stories” or “case studies” can be effectively disseminated.

Identify, support, and connect multiplicators and champions

Institutions such as universities, research facilities, institutes, and working groups should specifically designate individuals or teams to serve as central points of contact. This will establish multipliers and create an effective network that is interconnected both internally and externally. They should identify and promote champions and integrate champions and multipliers into existing networks in order to increase the visibility of RSEs in the long term.

Create entry points

Institutions should explicitly address newcomers right at the start, for example at the beginning of their first coding project within research, and offer personalized support: Personal contact through designated contact persons such as champions or mentoring programs can make it easier to get started.

Demand local software guidelines

Software guidelines provide a framework within developers can work (e.g., with regard to licenses, development practice requirements, etc.). Make yourself familiar with these guidelines and implement them. If guidelines do not yet exust, take action and initiate their development, e.g., based on existing models.

Value digital competencies

Academic leads should value digital skills—not just pay lip service to them, but also in ways that benefit digitally competent employees in their working lives. Emphasize digital skills in recruitment processes, employee evaluations, and team communication, mirroring the inclusion of research software publications in the DFG application process.

Create a culture of constructive criticism

Promote collaboration and trial and error by establishing a culture of error tolerance in which employees can share learning experiences or questions regardless of hierarchical levels and can also deal openly with failures or mistakes. Adopt a non-judgmental and constructive approach to problems, a learning culture that sees ignorance as an opportunity rather than a deficit, or a practice of “celebrating mistakes” in which mistakes are normalized and celebrated as necessary learning experiences. Encourage practices such as code sharing or code peer review.

Be aware of resource needs

Academic leads play a decisive role in determining priorities in their working environment. Be aware that software skills are relevant and that financial and human resources are needed to develop them. Take this into account in personnel planning, project proposals, the scheduling of scientific projects or theses, and when drawing up budgets.

Promote and require skill building

Academic leads should encourage intrinsically motivated employees to develop their digital skills, for example by offering them flexible working hours to give them space for further training. If employees are not intrinsically motivated to acquire the necessary software skills on their own, academic leads should formulate requirements for the development of digital skills and, for example, require participation in specific training courses, especially institutionalized training and continuing education programs in the field of RSEng.

Lobby for RSE

As a link between organizational units in the scientific system, acadmic leads should not only promote the importance of digital skills “downward” within their own workforce, but also lobby “upward”—in negotiations on positions or budgets, in the review of project proposals, or in their work in scientific societies.

On- and off-board with RSE in mind

Checklists for on- and offboarding should also cover aspects related to the development and use of research software, such as references to guidelines .

Allocate resources for digital skills

Enable applications for resources for the further training of project staff so that necessary digital skills can be embedded in projects - from courses for individual developers on specific software skills to more general digital skills for the entire project.

Ensure digital competence in review panels

Proposal evaluations should ensure there is scope for developing digital skills within the project. To this end, committees must include experts on this topic.

Create career paths

Develop CV templates that recognize the diversity of research outputs (including data and software publications).

Increase subjective attractiveness

To make research software skills more attractive to young researchers, institutional decision-makers, and “sleeping” RSEs, scientific infrastructure, funding agencies, interest groups, or research software developers can use appealing phrases (e.g., “Researchers Who Code”), organize events, involve influential individuals, or share success stories from the community.

Increase objective attractiveness

Introduce awards and badges to promote and reward (top) performance. Develop mentoring programs and activity plans to involve RSE champions and give them recognition through awards, grants, or public platforms. Institutional funds can be used to finance these initiatives for prizes or mentoring programs. Individual funding programs from research organizations such as the VW Foundation, DFG, or EU projects are also available.

Use RSE KPIs

Improving the framework conditions also includes incorporating research software into research assessment (e.g., in evaluations). However, targeted incentives can also be created to highlight research software skills when hiring staff, promoting employees, or developing internal incentive systems, e.g., in the form of bonuses for teams that effectively integrate RSEs. The quantitative and qualitative key performance indicators (KPIs) and evaluation mechanisms should be made explicit and published.

Develop, implement, and share policies

In close cooperation with RSEs and other relevant communities, working groups, universities, research institutions, or research networks should develop, implement, and publish guidelines or checklists for RSE competencies for internal and external use. This includes, for example, defining RSE roles and responsibilities in code work, clearly assigning responsibilities for research software in projects and working groups, and naming resources. Either use existing research software policies, create new institutional or supplement existing open science/research data policies. Evaluate and update the resulting policies.

Create support for software policies

Set up central points of contact for software policies with designated persons to answer questions about software policies to accompany the implementation of a research software policy.