the-teachingRSE-project / competencies

The teachingRSE project: "Teaching and Learning Research Software Engineering"
Creative Commons Attribution 4.0 International
28 stars 19 forks source link

Estimate the number of RSEs #22

Closed CaptainSifff closed 1 year ago

CaptainSifff commented 1 year ago

I promised to do an estimate....

Bisaloo commented 1 year ago

A third approach to estimate the number of RSEs we mentioned in last week's meeting: look at the proportion of lab technicians or other more established support roles in other fields and assume it can be transposed to RSEs.

Possible sources:

CaptainSifff commented 1 year ago

Not quite the statistic that I was looking for, but some other statistics about RSEs in Germany in 2017: http://wherecamp2017.geoit.org/wp-content/uploads/2017/10/26-A-German-study-about-Research-Software-Engineers-RSEs-The-people-writing-software-for-Science-Martin-Hammitzsch-GFZ.pdf

jngrad commented 1 year ago
CaptainSifff commented 1 year ago

here'S a big collection of links on RSE: https://docs.google.com/document/d/1dQeTYt9gZ03KCgPGPGnUBW5QS28rLE7GLWJImNc9e_U/edit

jngrad commented 1 year ago
jngrad commented 1 year ago

~400 respondents have a job descriptions matching RSE/CSE/RDM in the 2022 survey (file data/2022.csv, permalink).

Small sample of 125 respondents (click to unroll) | Country | University | Official job title | Job title you use | | --- | --- | --- | --- | | Australia | Queensland University of Technology | Software Developer/Data Scientist | | | Australia | Swinburne University of Technology | Postdoctoral Researcher | Senior Research Software Scientist | | Australia | The Australian National University | Scientific Programmer | Research Software Engineer | | Australia | The University of Melbourne | Software Engineer | | | Australia | The University of Sydney | Research Assistant | Bioinformatician | | Austria | | Repository Manager | | | Austria | | software developer / tutor | | | Austria | | Softwareentwickler | Research Technolgist | | Belgium | | Bioinformatics tool developer | | | Belgium | | Software engineer | | | Belgium | | Scientist - Software engineer | IT Specialist | | Belgium | | Senior bioinformatics scientist | | | Brazil | | Mid-Level Software engineer | Devops | | Brazil | | IOOS DMAC Software developer | | | Canada | | senior software engineer | | | Canada | | Programmer Analyst | | | Canada | | Application Developer | | | Colombia | | Software Developer | | | Denmark | | Data engineer | | | Egypt | | Owner of a company | Software developer | | Finland | Aalto University | Research Software Engineer | | | Finland | University of Helsinki | Bioinformatician | | | Finland | University of Oulu | Research Assistant | Software Engineer | | Finland | | senior specialist, information systems | software developer | | Finland | | Senior application specialist | | | France | | Software engineer | | | France | | Expert en calcul scientifique | | | France | | Ingénieure en génie logiciel | Informaticienne | | France | | Ingénieur en ingénierie logicelle | | | France | | maitre de conférences en bioinformatique | | | Germany | Heidelberg University | Research Software Engineer | | | Germany | University of Erlangen-Nuremberg | Wissenschaftlicher Mitarbeiter | Softwareentwickler | | Germany | University of Göttingen | wissenschaftlicher Softwareentwickler | | | Germany | University of Stuttgart | Research Data Management and Research Software... | | | Germany | University of Würzburg | Numerical Scientists/Research Software Engineer | | | Germany | | Bioinformatic software engineer | Data manager | | Germany | | Chief Technology Officer | Leiter der Software Entwicklung | | Germany | | Scientific Software Engineer | | | Germany | | Research Data Managament Coordinator | | | India | | R Developer - Consultant | | | Italy | | data analyst | | | Italy | | Scientific Programmer | | | Italy | | Scientific Programmer | | | Liechtenstein | | Informatiker | Research Software Engineer | | Netherlands | | Scientific researcher | Bioinformatician | | Netherlands | | Technical support for research and education. | Research Software Engineer | | Netherlands | | Senior eScience Research Engineer | | | Netherlands | | Directeur Digitale Infrastructuur | | | Netherlands | | Master student | RSE | | Netherlands | | Ontwikkelaar ICT | Lead Engineer | | New Zealand | AUT University | Software Engineer | | | New Zealand | The University of Auckland | Research Software Engineer | | | New Zealand | University of Canterbury | Data Software Architect | | | Norway | Norwegian University of Science and Technology | senior engineer | Research Software Engineer | | Norway | University of Oslo | Scientific programmer | Research Software Engineer | | Norway | University of Oslo | Senior engineer | Research Software Engineer | | Norway | | Scientific Software Developer | | | Norway | | Scientific developer | | | Poland | | Software Engineer | | | Portugal | | Lead Dev Ops | | | Singapore | | HPC Architect | | | Spain | | Estudiante de doctorado | Bioinformático | | Spain | | Research Engineer | | | Spain | | PhD Student | Bioinformatician | | Sweden | Lund University | Research Engineer | IT guy | | Sweden | University of Gothenburg | IT engineer | Sectionhead | | Sweden | Uppsala University | Researcher | Research software engineer | | Sweden | | Researcher | Team leader for bioinformatics development | | Switzerland | | software developer | snow modeler | | Switzerland | | Senior Research Software Engineer | | | Switzerland | | Computer Scientist | | | Ukraine | | DevOps engineer | | | UK | Cardiff University | Senior Research Software Engineer (Research Fe... | | | UK | Durham University | Research Software Engineer | | | UK | Imperial College London | RSE Team Lead | | | UK | King's College London | Senior Research Software UI/UX Designer | | | UK | King's College London | Research Associate | RSE | | UK | Lancaster University | RSE | | | UK | Newcastle University | Head of Research Software Engineering | | | UK | Queen's University Belfast | Research Software Engineering Fellow | | | UK | Swansea University | Senior Research Software Engineer | RSE Fellow, RSE Team Leader | | UK | The Open University | Software Developer | Research and Innovation Software Developer | | UK | University College London | Head of Research Software Engineering | | | UK | University of Birmingham | Senior Research Software Engineer | | | UK | University of Bristol | Senior Systems Developer | Research Software Engineer | | UK | University of Cambridge | Head of Research Software Engineering | | | UK | University of Edinburgh | Research Associate | Researcher/Research software engineer | | UK | University of Edinburgh | Senior analyst developer | Research Data Manager | | UK | University of Hull | Senior HPC RSE | | | UK | University of Leicester | Research Assistant | Research software engineer | | UK | University of Manchester | Software Developer for Telescope Control | | | UK | University of Nottingham | Senior Digital Research Scientist | Senior Software Developer | | UK | University of Oxford | Senior Research Software Engineer | | | UK | University of Oxford | Research Software Engineer | Technical coordinator | | UK | University of Reading | Computational Scientist | | | UK | University of Sheffield | Director of RSE | | | UK | University of Southampton | Senior Research Software Engineer | Deputy Director | | UK | University of Warwick, Coventry | Associate Professor | RSE Fellow | | UK | University of York | Research Software Engineer | | | USA | Arizona State University | Lead Scientific Software Engineer | | | USA | Arizona State University | Scientific Software Engineer | | | USA | Brown University | Senior Research Software Engineer | | | USA | Brown University | Reserach Software Engineer | | | USA | Carnegie Mellon University | Research Programmer | | | USA | Dartmouth College | Principal Research Software Engineer / Adjunct... | | | USA | Harvard University | Senior Bioinformatics Software Developer | | | USA | Indiana University at Bloomington | Data Analyst | Research Software Engineer | | USA | New York University | Senior Research Network Engineer | Senior Research Software Engineer | | USA | Northwestern University | Research Data Services Lead | | | USA | Ohio State University, Columbus | Scientific Applications Engineer | | | USA | University of Exeter | Research Software Engineer | | | USA | Princeton University | Senior Research Software Engineer | | | USA | Princeton University | Director, Research Software Engineering | | | USA | Purdue University | Software Engineer | | | USA | Stanford University | Software Developer 2 | Research Engineer | | USA | Tulane University | Computational Scientist | | | USA | University of Alaska-Fairbanks | IS Professional 5A | Senior Research Software Engineer | | USA | University of California, Santa Barbara | Lead Software Engineer | | | USA | University of Chicago | Computational Scientist / Lecturer (joint appo... | | | USA | University of Colorado at Boulder | Professional Research Assistant | Software Engineer 3 | | USA | University of Ilinois | Senior Research Programmer | Manager | | USA | University of Maryland | Senior Faculty Specialist | Research Software Architect | | USA | University of Michigan-Ann Arbor | application programmer/analyst | research software developer |
Python script to filter job descriptions (click to unroll) ```python import numpy as np import pandas as pd df = pd.read_csv("2022.csv") label_socio1 = "socio1. In which country do you work?" label_currentEmp2 = "currentEmp2. Which university do you work for?" label_currentEmp5 = "currentEmp5. What is your official job title?" label_currentEmp60 = "currentEmp60. Please enter the job title you use." label_currentEmp1qde = "currentEmp1qde. Please select your organization type" # show all job descriptions data_currentEmp60 = df[label_currentEmp60].to_list() print(sorted(set(x for x in data_currentEmp60 if isinstance(x, str)))) data_currentEmp5 = df[label_currentEmp5].to_list() print(sorted(set(x for x in data_currentEmp5 if isinstance(x, str)))) # filter RSE-like, CSE-like and RDM-like job descriptions (using keywords) rse_factors_currentEmp60 = { 'Bioinformatician', 'bioinformatics researcher', 'bioinformatics scientist ', 'Bioinformático', 'CSE Architect', 'Data manager', 'Data Science & Systems Integration Deputy Program Manager ', 'Data Scientist', 'développeuse', 'HPC scientific programmer', 'informaticien', 'Informaticienne', 'ingénieur système', 'Leiter der Software Entwicklung', 'RDM Policy Advisor', 'Research and Innovation Software Developer', 'Research Data Management Policy Advisor', 'Research Data Manager', 'Research Engineer', 'Research Software Architect', 'research software developer', 'Research software engineer', 'Research Software Engineer', 'Researcher/Research software engineer', 'RSE', 'RSE Fellow', 'RSE Fellow, RSE Team Leader', 'Scientific software engineer', 'Senior Developer', 'Senior Research Software Engineer', 'Senior Research Software Scientist', 'Senior Software Developer', 'software developer', 'Software developer', 'Software Developer', 'Software Engineer', 'Software Engineer 3', 'Softwareentwickler', 'Softwareentwicklerin', 'Team leader for bioinformatics development', 'Wissenschaftlicher Programmierer', } rse_factors_currentEmp5 = { ' Scientific Software Developer', 'Application Developer', 'application programmer/analyst', 'Application specialist', 'Applications & Architecture Manager', 'Applications Consultant', 'Applications developer', 'Applications Support Specialist', 'Assistant en ingénierie logicielle', 'Backend Developer', 'Bioinformatic software engineer ', 'Bioinformatician', 'bioinformatician', 'Bioinformaticien', 'Bioinformatics intern', 'Bioinformatics tool developer', 'cheffe de projet SI', 'Compiler Engineer', 'Computational and Data Research Specialist', 'Computational Biologist', 'computational biologist', 'Computational Physicist / Research Software Engineer', 'Computational Scientist', 'Computational Scientist / Lecturer (joint appointment)', 'Computer Officer', 'Computer Scientist', 'data analyst', 'Data engineer', 'Data Science Informatician', 'Data Science Software Engineer', 'data scientist', 'Data Software Architect', 'Data Steward', 'Deputy Project Lead for Computer Science', 'Developer / Data Scientist', 'Developer/Data Scientist', 'development manager', 'DevOps engineer', 'DevOps/Administrator und Entwickler', 'Directeur Digitale Infrastructuur', 'Director of Research Engineering', 'Director of research engineering', 'Director of RSE', 'Director, Research Software Engineering', 'Earth Observation Research Software Engineer', 'ELN Support and RDM consultant', 'eScience Research Engineer', 'eScience research Engineer', 'Expert calcul scientifique', 'Expert en calcul scientifique', 'Full-Stack Developer', 'Full-Stack-Developer', 'Geodaten-Manager', 'Gestionnaire de parc informatique et télécommunications ', 'Head of Bioinformatics Core', 'Head of Research e-Infrastructure', 'Head of Research Software Engineering', 'Head of Scientific Data Services', 'Head Software Engineering group', 'HPC Architect', 'HPC Consulant', 'HPC Consultant/Software Integration Specialist', 'HPC research software engineer', 'HPC Scientist', 'HPC Systems Programmer', 'Informatiker', 'Informatiker ', 'I contract with multiple research software orgs - industry and DOE lab', 'Information Systems Programme Manager', 'Ingénieur chercheur en calcul scientifique ', "ingénieur d'étude développeur Web", "ingénieur d'étude en calcul scientifique", 'Ingénieur de Recherche : Expert en Calcul Scientifique', 'ingénieur de recherche calcul', 'Ingénieur de recherche confirmé Bioinformatique', 'Ingénieur de recherche en calcul scientifique', 'ingénieur de recherche en calcul scientifique', 'Ingénieur de recherche en informatique', 'Ingénieur en ingénierie logicelle', 'ingénieur expert en calcul scientifique', "Ingénieur en développement et déploiement d'applications ; Ingénieur d’exploitation sur grand instrument", 'Ingénieure en génie logiciel', 'IOOS DMAC Software developer', 'IT Applications and Architecture Manager', 'IT developer', 'IT engineer', 'Lead Dev Ops', 'Lead Developer Scientific Software', 'Lead Scientific Software Engineer', 'Lead Software Developer, Computational Physics', 'Lead Software Engineer', 'Leiter der Arbeitsgruppe Bioinformatik und Informationstechnologie', 'Machine Intelligence Engineer', 'maitre de conférences en bioinformatique', 'Manager, Cyberinfrastructure and Partnerships - Vermont EPSCoR', 'Manager, Research Computing', 'Mid-Level Software engineer', 'Numerical Scientists/Research Software Engineer', 'Ontwikkelaar ICT', 'PostDoc Bioinformatik', 'Principal Computer Scientist', 'Principal Research Software Engineer / Adjunct Professor of Business Administration', 'Programmbereichsleiter', 'programme manager', 'Programmer Analyst', 'Programmer Analyst III', 'Quantitative UX Researcher', 'R Developer - Consultant', 'R&D S&E, Computer Science', 'Repository Manager', 'Reseach Software Engineer', 'Research Data Engineer', 'Research Data Managament Coordinator', 'Research Data Management and Research Software Engineering', 'Research Data Scientist', 'Research Data Services Lead', 'Research Engineer', 'Research Fellow in Data Science', 'Research Programmer', 'Research Software Developer', 'Research software developer', 'Research Software Engineer', 'Research software engineer', 'research software engineer', 'Research Software engineer', 'Research Software Engineer ', 'Research Software Engineering Fellow', 'Research Software Engineering Group', 'Reserach Software Engineer', 'Responsable Informatique', 'RSE', 'rse', 'RSE Team Lead', 'Scientific Applications Engineer', 'Scientific developer', 'Scientific programmer', 'Scientific Programmer', 'Scientific Programmer - Bioinformatician', 'Scientific Researcher', 'Scientific researcher', 'Scientific Software Developer', 'Scientific Software Engineer', 'Scientific software engineer', 'Scientist - Software engineer', 'Scientist/Expert Mathematics and Staistics', 'SDC software developer', 'Senior developer, for a particular value of ', 'Senior analyst developer ', 'Senior application specialist', 'Senior Applications Programmer/ Analyst', 'Senior Bioinformatician', 'Senior bioinformatics scientist', 'Senior Bioinformatics Software Developer', 'Senior Digital Research Scientist', 'Senior eScience Research Engineer', 'Senior HPC RSE', 'Senior Information Analyst', 'Senior Research Computing Engineer', 'Senior Research Computing Officer', 'Senior Research Programmer', 'Senior Research Software Developer', 'Senior research software developer', 'Senior Research Software Development Engineer', 'Senior Research Software Engineer', 'Senior Research Software Engineer (Research Fellow)', 'Senior Research Software UI/UX Designer', 'Senior RSE', 'Senior Scientific Software Engineer', 'Senior Software Architect', 'Senior Software Design Engineer', 'Senior Software Developer', 'senior software engineer', 'Senior Software Engineer', 'Senior software research developer', 'Senior Software Scientist', 'Senior Software Test Manager', 'senior specialist, information systems', 'Senior Staff Software Engineer', 'Senior Systems Developer', 'Software Architect', 'Software Architect PANGAEA', 'software developer', 'Software developer', 'Software Developer', 'software developer / tutor', 'Software Developer 2', 'Software Developer for Telescope Control', 'Software developer/data scientist', 'Software Developer/Data Scientist', 'Software Development Coordinator', 'Software Engineer', 'Software engineer', 'Software Engineer, Humanities Research Computing', 'Software Engineer/Developer', 'Software Entwickler', 'Software Scientist', 'Software scientist', 'Software Systems Engineer', 'Softwareentwickler', 'Sr Research Software Engineer', 'Sr Research Software Engineer ', 'statistical programmer', 'Stellvertretende Abteilungsleiterin | Gruppenleitung Sustainable Software Engineering', 'Supercomputing services and support Consultant', 'Systems Programmer / Back-end Systems Software Developer / IT RC Systems Professional IV', 'Team Lead Helmholtz AI For Matter', 'Web Developer ', 'wissenschaftlicher Softwareentwickler', 'Wissenschaftliche Mitarbeit für Digital Humanities und Forschungs-Software-Entwicklung für digitale Editionen', } rse_factors_bitmask = np.logical_or( [x in rse_factors_currentEmp5 for x in df[label_currentEmp5]], [x in rse_factors_currentEmp60 for x in df[label_currentEmp60]] ) df_subset = df.loc[rse_factors_bitmask.tolist(), [label_socio1, label_currentEmp2, label_currentEmp5, label_currentEmp60, label_currentEmp1qde]].sort_values(by=[label_socio1, label_currentEmp2]) with pd.option_context('display.max_rows', None, 'display.max_columns', None, 'display.width', None): print(df_subset) # Jupyter notebook: display(df_subset) ```

Please note this survey was sent to multiple RSE channels (e.g. list of outlets in Germany), thus several research institutes are a bit over-represented.

jngrad commented 1 year ago

Maybe RSE course attendance stats can give us some idea of how many people seek to improve their RSE skills: