From 84d91cce0eca68846ab7a5422114490585fe10a5 Mon Sep 17 00:00:00 2001 From: Simon Christ Date: Fri, 17 Nov 2023 10:53:42 +0100 Subject: [PATCH] add missing icons --- competencies.md | 48 ++++++++++++++++++++++++------------------------ 1 file changed, 24 insertions(+), 24 deletions(-) diff --git a/competencies.md b/competencies.md index 427c0e25..fb0c9550 100644 --- a/competencies.md +++ b/competencies.md @@ -422,7 +422,7 @@ find it and then easily evaluate if the software actually suits their needs. Apart from functionality, the integration with other software, expected sustainability, and extensibility also have to be part of this evaluation. -### Software publication (SP) +### Software publication (\faicon{"F1EA} SP) The second part of FAIR software is concerned with publishing new and derived works and making them available for re-use by the research community and the general public. @@ -475,10 +475,10 @@ Code review also includes aspects of the teaching skill. The RSE should have knowledge about project management. At some institutes, it follows the practices of the local research groups, but it is useful, if an RSE knows its place in a \faicon{"F46D} PM scheme, or can bring in new ideas for improvement. -Project management in research software engineering poses specific challenges (see [USERS](#interaction-with-users-and-other-stakeholders-users)) that might require the capacity +Project management in research software engineering poses specific challenges (see [\faicon{"F086} USERS](#interaction-with-users-and-other-stakeholders-users)) that might require the capacity to flexibly adapt to changing conditions and deviate from common project management methods. -### Interaction with users and other stakeholders (USERS) +### Interaction with users and other stakeholders (\faicon{"F086} USERS) Since research software is often developed as part of the research process itself, its requirements and specifications might change with the progression of research. @@ -504,14 +504,14 @@ what they would like to have learnt. Among the top five things mentioned were: facilitate understanding and documentation. Today this encompasses the knowledge of testing frameworks and CI/CD practices. - Contributing to large projects. This is a topic that requires competency in - \faicon{"E13C} SWREPOS, \faicon{"F1B8} SRU, SP in order to understand the ramifications of sharing, and \faicon{"F0E8} DOCBB, + \faicon{"E13C} SWREPOS, \faicon{"F1B8} SRU, \faicon{"F1EA} SP in order to understand the ramifications of sharing, and \faicon{"F0E8} DOCBB, since the contributed code has to be understood by others. Interacting with project members depends on the \faicon{"F500} TEAM skill. Today this entails the effective use of collaborative platforms like GitHub/GitLab, honouring a project's Code of Conduct, and some knowledge of popular software licenses like e.g. GPL. - When or why to keep repositories private. This decision requires knowledge in the \faicon{"E4BB} RC, to understand when it makes sense to open up or close down a repository. - The USERS, \faicon{"F500} TEAM and sometimes SP skills are required to make this decision. + The \faicon{"F086} USERS, \faicon{"F500} TEAM and sometimes \faicon{"F1EA} SP skills are required to make this decision. Furthermore, knowledge of the practices and contractual regulations of the RSE's institution are also required. - Proper Development. This broad topic requires all of the SE skills. Of course, @@ -523,7 +523,7 @@ what they would like to have learnt. Among the top five things mentioned were: - Finding a community. This can be interpreted in two different ways. First, we have the aspect of community building for a research project. Since this deals with software that is supposed to be used in research this requires - knowledge of \faicon{"E4BB} RC, USERS, and also \faicon{"E54D} NEW, in order to effectively interact with + knowledge of \faicon{"E4BB} RC, \faicon{"F086} USERS, and also \faicon{"E54D} NEW, in order to effectively interact with domain scientists. Today, an example is a presence on social media. The other \faicon{"F500} TEAM-related aspect is the embedding of RSE graduates into the community of RSEs. We envision our RSE graduates to be a part of a strong network of other @@ -574,9 +574,9 @@ A story-like example of an individual through the hierarchies can be found in @s | \faicon{"E54D} NEW | Some curiosity required to fit into research teams | same as junior, but a curiosity to enhance the code base is required | Curiosity to know in which direction to steer the project is required | | \faicon{"E4BB} RC | Awareness about the \faicon{"E4BB} RC | should know the position of the project in the \faicon{"E4BB} RC | Should know what is necessary for the project to fit into its position in the \faicon{"E4BB} RC | | \faicon{"F1B8} SRU | Should be aware about tools for \faicon{"F1B8} SRU | Should be able to find sth. with \faicon{"F1B8} SRU tools | Should be able to effectively find sth. with \faicon{"F1B8} SRU tools and be able to evaluate and perform the integration of a library into the project. | -| SP | Should be aware that SP needs to consider issues of intellectual property | Should be able to correctly publish software in simple cases and be able to identify cases where professional legal advice is needed. | Same as Senior plus the ability to take the future publication of software into account when initiating and guiding larger software collaboration projects | +| \faicon{"F1EA} SP | Should be aware that \faicon{"F1EA} SP needs to consider issues of intellectual property | Should be able to correctly publish software in simple cases and be able to identify cases where professional legal advice is needed. | Same as Senior plus the ability to take the future publication of software into account when initiating and guiding larger software collaboration projects | | \faicon{"F07B} DOMREP | The RSE should be able to interact with the domain repository | same as junior RSE | same as junior, and should know about how it fits into workflows surrounding these domain repositories | -| USERS | The RSE should be able to communicate with non-SE users of the project | same as junior | same as junior, and take feedback into account of the steering | +| \faicon{"F086} USERS | The RSE should be able to communicate with non-SE users of the project | same as junior | same as junior, and take feedback into account of the steering | | \faicon{"F51C} TEACH | should be able to perform simple peer-to-peer on-boarding tasks | should be able to explain logical components to other RSEs | Should be able to effectively communicate about all large-scale parts of the project. | | \faicon{"F46D} PM | Awareness about the employed project management method | Should be able to use the employed \faicon{"F46D} PM method | Should be able to design and adapt the employed \faicon{"F46D} PM method. | | \faicon{"F500} TEAM | Should be able to work in the team in order to effectively fulfil the given tasks. Should be able to learn from code review. | Should be able to break down tasks into more easily digestible sub-tasks | Should be able to lead the team and set the respective direction. | @@ -618,8 +618,8 @@ Students at undergraduate level mostly consume science/knowledge. During their studies, they should also learn about the existence of digital tools and structures. Undergrad students should be aware that RSEs exist and that software has different quality aspects (\faicon{"F0E8} DOCBB). They should be aware of domain specific tools (\faicon{"E4C7} LIBS, \faicon{"F1B8} SRU) and where to find them (\faicon{"E13C} SWREPOS, \faicon{"F07B} DOMREP). -At this level it is sufficient to consider software as black boxes (USERS) although some training in data presentation would be very helpful and a good way to find out about programming (\faicon{"F5FC} MOD, \faicon{"E54D} NEW). -They should have an awareness of software licenses and whom to ask if they have any questions (SP). +At this level it is sufficient to consider software as black boxes (\faicon{"F086} USERS) although some training in data presentation would be very helpful and a good way to find out about programming (\faicon{"F5FC} MOD, \faicon{"E54D} NEW). +They should have an awareness of software licenses and whom to ask if they have any questions (\faicon{"F1EA} SP). They will be taught about the research cycle (\faicon{"E4BB} RC) and that researchers often work in groups (\faicon{"F500} TEAM). During practicals, they will have an opportunity for peer learning (\faicon{"F51C} TEACH). @@ -637,8 +637,8 @@ A PhD student performs independent research under guidance. They need to know relevant tools and structures. They should know where to find information about tools and where to find help using them (\faicon{"F0E8} DOCBB, \faicon{"E13C} SWREPOS). They should be able to use the tools (\faicon{"E4C7} LIBS) and identify and report bugs (\faicon{"F5FC} MOD). -They need to be aware that the user's perspective is different from the developer's perspective in order to be able to write bug reports (USERS). -They might produce new software (\faicon{"F5FC} MOD, \faicon{"F1B8} SRU) in which case they need to understand how to license their code for publication (SP). +They need to be aware that the user's perspective is different from the developer's perspective in order to be able to write bug reports (\faicon{"F086} USERS). +They might produce new software (\faicon{"F5FC} MOD, \faicon{"F1B8} SRU) in which case they need to understand how to license their code for publication (\faicon{"F1EA} SP). PhD students need to be curious to be able to conduct their research. In order to be able to explore new tools (\faicon{"E54D} NEW) they must be able to evaluate research software (\faicon{"E4E2} SWLC). They need to be able to interact with services (\faicon{"E4BB} RC) and domain specific repositories (\faicon{"F07B} DOMREP). @@ -649,7 +649,7 @@ They should be able to supervise a student (\faicon{"F51C} TEACH). Postdocs are independent researchers. Their role is similar to that of a PhD student with a deepened focus on their research career. However, they are proficient users of all relevant tools, which makes them active contributors to their domain of research. -They need to be aware of more advanced topics regarding intellectual property rights, such as patents (SP). +They need to be aware of more advanced topics regarding intellectual property rights, such as patents (\faicon{"F1EA} SP). #### PI/Professor @@ -657,8 +657,8 @@ They are experts in their field and should be able to give proper guidance to th They should be aware of the skills of an RSE and when they might need one in their group. They should encourage their students to use relevant tools (\faicon{"E4C7} LIBS). They need to be able to judge the suitability of the software (\faicon{"E4E2} SWLC) and follow the interactions between relevant projects (\faicon{"E13C} SWREPOS). -They should be able to advise their students on the legal aspects of software production and distribution (SP). -They should be able to contribute meaningfully to the steering decisions of the software in their field (USERS). +They should be able to advise their students on the legal aspects of software production and distribution (\faicon{"F1EA} SP). +They should be able to contribute meaningfully to the steering decisions of the software in their field (\faicon{"F086} USERS). They need to guide students and give full-size lectures (\faicon{"F51C} TEACH). They need to manage and lead their research group (\faicon{"F46D} PM, \faicon{"F500} TEAM). @@ -813,7 +813,7 @@ We first summarise the meaning of each of the columns in the table: they can also provide institution-level access to platforms that support this. \\\hline %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% - SP& + \faicon{"F1EA} SP& Responsibility may be with an individual but they may not have necessary knowledge/skills.& This is a core area that RSE teams need to be aware of. An RSE team might have established practices, workflows and policies at hand to routinely publish software.& @@ -833,7 +833,7 @@ We first summarise the meaning of each of the columns in the table: extensively in but this is likely to be handled at a research group level. \\\hline %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% - USERS& + \faicon{"F086} USERS& Is the software developed to support external users? If so, additional technical skills may be required, especially if future sustainability is an aim.& @@ -910,7 +910,7 @@ while other RSEs might expand their skill set and profession to areas, that are #### OpenScience RSE Open Science and FAIRness of Data and Software are increasingly important topics in research, as exemplified by the demand of an increasing amount of research funding agencies requiring openness. -Hence an Open Science RSE is required to have a deeper knowledge in (\faicon{"E4BB} RC) and how to distribute software publicly (\faicon{"F1B8} SRU, SP). +Hence an Open Science RSE is required to have a deeper knowledge in (\faicon{"E4BB} RC) and how to distribute software publicly (\faicon{"F1B8} SRU, \faicon{"F1EA} SP). Open Science RSEs can help researchers navigate the technical questions that come up when practising Open Science, such as "How do I make my code presentable?", "What do I need to do to make my software FAIR?", or @@ -920,7 +920,7 @@ Like the Data-focused RSE, they have a deep understanding of RDM topics. #### Project/Community Manager RSEs When research software projects become larger, they need someone who manages -processes and people. This gap can be filled by people who invest in the (\faicon{"F46D} PM), (USERS), and (\faicon{"F500} TEAM) skills, as exemplified in @subsec:examplecareer. +processes and people. This gap can be filled by people who invest in the (\faicon{"F46D} PM), (\faicon{"F086} USERS), and (\faicon{"F500} TEAM) skills, as exemplified in @subsec:examplecareer. Building a community around a research project is an important building block in building sustainable software [@Segal2009], so these RSEs play an important role, even if they do not necessarily touch much of the code themselves. @@ -1143,7 +1143,7 @@ Core modules are of course drawn from the three pillars of the RSE and can be ca - Research Skills: - Optional Domain Mastery Module: Additional minor research courses, but students with a home-domain already have the research part well-covered. - - Research Tools Module: Here we teach tools used to distribute and publish software, as well as introducing students to domain specific data repositories. Thereby gaining foundational knowledge in (\faicon{"F1B8} SRU, SP, \faicon{"F07B} DOMREP). + - Research Tools Module: Here we teach tools used to distribute and publish software, as well as introducing students to domain specific data repositories. Thereby gaining foundational knowledge in (\faicon{"F1B8} SRU, \faicon{"F1EA} SP, \faicon{"F07B} DOMREP). - Meta-Research Module: Here we teach people how research works. The research life cycle is introduced, as well as the data life cycle and the software life cycle are abstractly introduced. - Software Engineering Skills: @@ -1153,7 +1153,7 @@ Core modules are of course drawn from the three pillars of the RSE and can be ca - Communication Skills: - Project Management Methods: Here we teach project management methods that are useful in science, such as agile ones(\faicon{"F46D} PM). - - Communication Skills Module: Here we have courses focusing on interdisciplinary communication, interacting across cultures, communication in hierarchies, supporting end users effectively. These are all facets of the (USERS) skill. + - Communication Skills Module: Here we have courses focusing on interdisciplinary communication, interacting across cultures, communication in hierarchies, supporting end users effectively. These are all facets of the (\faicon{"F086} USERS) skill. - Teaching Module: This module covers topics to effectively design courses and teaching material for the various digital tools, thereby strengthening the (\faicon{"F51C} TEACH) skill. Given that RSE work also involves a lot of craftsmanship skills, @@ -1162,7 +1162,7 @@ At least two lab projects are required within the mandatory curriculum. These should be executed as a team and involve a question from a domain science. We recommend covering both the candidate's home domain as well as another domain of science. Ideally, projects stem from collaborations with scientists within the institution and RSE -students take the role of a consultant. This setup strengthens the (\faicon{"F500} TEAM, \faicon{"F51C} TEACH, USERS) skill +students take the role of a consultant. This setup strengthens the (\faicon{"F500} TEAM, \faicon{"F51C} TEACH, \faicon{"F086} USERS) skill and most likely also the (\faicon{"F5FC} MOD) skill through interaction. To emphasise the exposure to domains outside of their bachelor's degree domain, @@ -1238,13 +1238,13 @@ The new position involves taking responsibility for the RSE related aspects of a With her new responsibilities comes a shift in the importance of various aspects of her work. Having this position in an inter-organisational project places far more emphasis on communication and organisation skills. She is spending time teaching people (\faicon{"F51C} TEACH skill) to onboard them into the project. -There is a lot of interaction with different stakeholders in the project like funders and user groups (USERS skill). +There is a lot of interaction with different stakeholders in the project like funders and user groups (\faicon{"F086} USERS skill). To oversee the project, she uses an amalgam of both agile and traditional project-management concepts and methods which she acquires on-the-job (\faicon{"F46D} PM skills). Her work so far has already been heavy on (\faicon{"F500} TEAM) skills, but now also the leadership aspect comes into play. #### RSE-focused Principal Investigator -The job experience as a leading RSE for a large project was the last requirement necessary to be awarded the title of a "Certified Research Software Professional" (CRSP) +The job experience as a leading RSE for a large project was the last requirement necessary to be awarded the title of a "Certified Research Software Professional" (CR\faicon{"F1EA} SP) from an institutionalised centre of RSE education. The certificate confirms her track record of valuable software contributions and of teaching and mentoring people,