SlideShare a Scribd company logo
Software Professionals (RSEs) at NCSA
Data Science Summit, 8 November 2019
Daniel S. Katz
(d.katz@ieee.org, http://danielskatz.org, @danielskatz)
Assistant Director for Scientific
Software & Applications
Research Associate Professor,
CS, ECE, iSchool
Credit to Rob Haines for the
original slides for our paper
(https://arxiv.org/abs/1903.00732)
My software background
• PhD in computational electromagnetics (developing new methods
implemented in software)
• Work in industry, national labs, academia, government
• 25 years of software development
• 15+ years of managing software developers and software
projects (including 4 years at NSF running $30m SI2 program)
• 8 years of research in software as a scholarly product and
software development & maintenance as a sociotechnical activity
• Software citation, software sustainability, software publishing, software
peer-review, …
• Work on policies for software at NSF and in last year with OECD
Why do we care about research software?
• Funding
• ~20% of NSF projects over 11 years topically discuss software in their
abstracts ($10b)
• 2 of 3 main ECP areas are research software (~$4b)
• Publications
• Software intensive projects are a majority of current publications
• Most-cited papers are methods and software
• Researchers
• >90% of US/UK researchers use research software
• ~65% would not be able to do their research without it
• ~50% develop software as part of their research
Collected from http://www.dia2.org in 2017
Nangia & Katz;​ 10.1109/eScience.2017.78
“Top 100-cited papers of all time,” Nature, 2014 10.1038/514550a
Hettrick, https://www.software.ac.uk/blog/2016-09-12-its-impossible-
conduct-research-without-software-say-7-out-10-uk-researchers
Nangia & Katz, 10.6084/m9.figshare.5328442.v1
Software is a strategic advantage
• Both direct (software itself) and indirect (things enabled by
software and by professional software developers)
• Competition between institutions
• E.g. for faculty who want to go where they can be successful and are
supported by resources including start up funding, facilities (computing,
data, software, etc.) and staff
• E.g. for projects that build or rely on software
• UK Research Excellence Framework (REF)
• System for assessing quality of research in UK higher education
institutions, tied to university funding, includes software as an output and
research that relies on software
How do we develop better research software?
There are two hard problems in Software Engineering:
1. People
2. Convincing others that “people” is a hard problem
So, lets talk about people…
Really:
• Culture problems (hardest)
• Management problems
• Software problems (easiest)
https://martinfowler.com/bliki/TwoHardThings.html;
https://twitter.com/holman/status/776291833336979456
The Craftsperson and the Scholar
• Scholar: archetypical researcher driven to
understand things to their fullest capability
• Find intellectually-demanding problems
• Curiosity-driven, work on a topic until understanding
has been acquired, pass on that understanding
through teaching
• Craftsperson: driven to create and leave behind
an artifact that reifies their efforts in a field
• Feels pain when things they make are fragile or ugly
• Prefer to make things that explain themselves
• Work requires patience, and pride in doing a job well
• Scientific software requires individuals who
combine the best of both roles
• And can speak/translate both languages
http://www.software.ac.uk/blog/2012-11-09-craftsperson-and-scholar
Software
Engineer
Researcher
Developer
Software
Engineering
Research
RSE
Researcher
https://danielskatzblog.wordpress.com/2019/07/12/super-rses-combining-research-and-service-in-three-
dimensions-of-research-software-engineering/
What is a Research Software Engineer?
Illinois NCSA: Innovative Software and Data Analysis
• Organizational context
• Research institute hosted at a university, outside of academic departments
• Team size
• 25
• Remit
• Support individual needs; generalize those needs across projects;
build software frameworks in response (both service and research)
• Funding model
• Research grants (soft funding)
• Job security; career progression
• Staff hired on indefinite contracts
• Five grades of research programmer (RP): assistant, RP, senior, lead, principle
• Moving to research software engineer (RSE) instead of RP
Work processes
• Some agile methods used
• Staff work on multiple projects and in multiple teams
• Agile model doesn’t fully apply
• Twice weekly team standups help keep every focused on tasks and share
knowledge
• Projects can adapt some agile methods while recognizing staff are shared
• Line management & mentoring
• 2 co-leads and management committee (3 staff) manage and mentor staff
• 0.2 FTE institution support for each
• Each project also has a senior developer, supported ~0.1 FTE on that
project to mentor staff in that project
• Goal: RSEs work on 2-3 projects (never 1)
High-level analysis of professional RSEs
• Advantages
• Institutional memory spanning projects, domains, time
• Flexible workforce with flexible skills
• Can support varying levels of efforts (e.g. portions of staff members)
• Supports mentoring/coaching
• Neutral
• Costlier staff & better maintained code
• Disadvantages
• Perpetual precarious staffing allocations when solely reliant on grants
with finite durations
• Different than status quo model – hard to describe to funders/reviewers
• Risk of siloed staff after prolonged embedding in projects
Career paths (NCSA)
US RSE Association
• Created with inspiration and support from
Society of Research Software Engineering
• Focused on US members and US issues
• Networking, jobs, careers, events, …
• In academia, labs, industry, …
• Started in 2018, publicized in 2019
• BOF at PEARC 2019,
panel at SC19
• About 200 members
• https://us-rse.org
Career paths in US universities
• Campus Research Computing Consortium
(CaRCC)’s CI Workforce
Development/Professionalization Committee held
2018 CI Professionalization Workshop
• One outcome: draft Research Computing and Data
Professionals Job Elements and Career Guide
• Organized around “four facings” roles: researcher-
facing, system-facing, software/data-facing,
sponsor/stakeholder-facing
• For RSEs and data scientists (software/data
facing), similar to the NCSA descriptions
• Now publicizing, presented to EDUCAUSE to get
CIOs to support, initial implementation at BU &
Harvard
Conclusions
• Software is becoming recognized as an essential part of research
• Support aspects of such software are not … yet
• RSE staff, RSE groups
• Models for sustaining, citing and crediting software
• RSE-type groups are emerging globally to address these needs
• RSEs and data scientists do not work in a vacuum
• They are key to common research activities, such as hypothesis
generation, study design, data analysis, and interpretation of results
• Efforts to make this well understood and accepted by the
scientific community at large are ongoing
Acknowledgments
Paper: 10.1109/SE4Science.2019.00009
Preprint: https://arxiv.org/abs/1903.00732
Thanks:
• Rob Haines, Kenton McHenry, Caleb Reinking
• Caroline Jay, Carole Goble, Jeff Carver, Sandra
Gesing, Ian Cosden, Ian Cottam, James Howison,
Simon Hettrick, Neil Chue Hong, Jeremy Cohen,
James Hetherington, Mark Turner, Alys Brett,
Catherine Jones, Christopher Woods, Andy
Turner, Claire Wyatt
Software Professionals (RSEs) at NCSA

More Related Content

Software Professionals (RSEs) at NCSA

  • 1. Software Professionals (RSEs) at NCSA Data Science Summit, 8 November 2019 Daniel S. Katz (d.katz@ieee.org, http://danielskatz.org, @danielskatz) Assistant Director for Scientific Software & Applications Research Associate Professor, CS, ECE, iSchool Credit to Rob Haines for the original slides for our paper (https://arxiv.org/abs/1903.00732)
  • 2. My software background • PhD in computational electromagnetics (developing new methods implemented in software) • Work in industry, national labs, academia, government • 25 years of software development • 15+ years of managing software developers and software projects (including 4 years at NSF running $30m SI2 program) • 8 years of research in software as a scholarly product and software development & maintenance as a sociotechnical activity • Software citation, software sustainability, software publishing, software peer-review, … • Work on policies for software at NSF and in last year with OECD
  • 3. Why do we care about research software? • Funding • ~20% of NSF projects over 11 years topically discuss software in their abstracts ($10b) • 2 of 3 main ECP areas are research software (~$4b) • Publications • Software intensive projects are a majority of current publications • Most-cited papers are methods and software • Researchers • >90% of US/UK researchers use research software • ~65% would not be able to do their research without it • ~50% develop software as part of their research Collected from http://www.dia2.org in 2017 Nangia & Katz;​ 10.1109/eScience.2017.78 “Top 100-cited papers of all time,” Nature, 2014 10.1038/514550a Hettrick, https://www.software.ac.uk/blog/2016-09-12-its-impossible- conduct-research-without-software-say-7-out-10-uk-researchers Nangia & Katz, 10.6084/m9.figshare.5328442.v1
  • 4. Software is a strategic advantage • Both direct (software itself) and indirect (things enabled by software and by professional software developers) • Competition between institutions • E.g. for faculty who want to go where they can be successful and are supported by resources including start up funding, facilities (computing, data, software, etc.) and staff • E.g. for projects that build or rely on software • UK Research Excellence Framework (REF) • System for assessing quality of research in UK higher education institutions, tied to university funding, includes software as an output and research that relies on software
  • 5. How do we develop better research software? There are two hard problems in Software Engineering: 1. People 2. Convincing others that “people” is a hard problem So, lets talk about people… Really: • Culture problems (hardest) • Management problems • Software problems (easiest) https://martinfowler.com/bliki/TwoHardThings.html; https://twitter.com/holman/status/776291833336979456
  • 6. The Craftsperson and the Scholar • Scholar: archetypical researcher driven to understand things to their fullest capability • Find intellectually-demanding problems • Curiosity-driven, work on a topic until understanding has been acquired, pass on that understanding through teaching • Craftsperson: driven to create and leave behind an artifact that reifies their efforts in a field • Feels pain when things they make are fragile or ugly • Prefer to make things that explain themselves • Work requires patience, and pride in doing a job well • Scientific software requires individuals who combine the best of both roles • And can speak/translate both languages http://www.software.ac.uk/blog/2012-11-09-craftsperson-and-scholar
  • 8. Illinois NCSA: Innovative Software and Data Analysis • Organizational context • Research institute hosted at a university, outside of academic departments • Team size • 25 • Remit • Support individual needs; generalize those needs across projects; build software frameworks in response (both service and research) • Funding model • Research grants (soft funding) • Job security; career progression • Staff hired on indefinite contracts • Five grades of research programmer (RP): assistant, RP, senior, lead, principle • Moving to research software engineer (RSE) instead of RP
  • 9. Work processes • Some agile methods used • Staff work on multiple projects and in multiple teams • Agile model doesn’t fully apply • Twice weekly team standups help keep every focused on tasks and share knowledge • Projects can adapt some agile methods while recognizing staff are shared • Line management & mentoring • 2 co-leads and management committee (3 staff) manage and mentor staff • 0.2 FTE institution support for each • Each project also has a senior developer, supported ~0.1 FTE on that project to mentor staff in that project • Goal: RSEs work on 2-3 projects (never 1)
  • 10. High-level analysis of professional RSEs • Advantages • Institutional memory spanning projects, domains, time • Flexible workforce with flexible skills • Can support varying levels of efforts (e.g. portions of staff members) • Supports mentoring/coaching • Neutral • Costlier staff & better maintained code • Disadvantages • Perpetual precarious staffing allocations when solely reliant on grants with finite durations • Different than status quo model – hard to describe to funders/reviewers • Risk of siloed staff after prolonged embedding in projects
  • 12. US RSE Association • Created with inspiration and support from Society of Research Software Engineering • Focused on US members and US issues • Networking, jobs, careers, events, … • In academia, labs, industry, … • Started in 2018, publicized in 2019 • BOF at PEARC 2019, panel at SC19 • About 200 members • https://us-rse.org
  • 13. Career paths in US universities • Campus Research Computing Consortium (CaRCC)’s CI Workforce Development/Professionalization Committee held 2018 CI Professionalization Workshop • One outcome: draft Research Computing and Data Professionals Job Elements and Career Guide • Organized around “four facings” roles: researcher- facing, system-facing, software/data-facing, sponsor/stakeholder-facing • For RSEs and data scientists (software/data facing), similar to the NCSA descriptions • Now publicizing, presented to EDUCAUSE to get CIOs to support, initial implementation at BU & Harvard
  • 14. Conclusions • Software is becoming recognized as an essential part of research • Support aspects of such software are not … yet • RSE staff, RSE groups • Models for sustaining, citing and crediting software • RSE-type groups are emerging globally to address these needs • RSEs and data scientists do not work in a vacuum • They are key to common research activities, such as hypothesis generation, study design, data analysis, and interpretation of results • Efforts to make this well understood and accepted by the scientific community at large are ongoing
  • 15. Acknowledgments Paper: 10.1109/SE4Science.2019.00009 Preprint: https://arxiv.org/abs/1903.00732 Thanks: • Rob Haines, Kenton McHenry, Caleb Reinking • Caroline Jay, Carole Goble, Jeff Carver, Sandra Gesing, Ian Cosden, Ian Cottam, James Howison, Simon Hettrick, Neil Chue Hong, Jeremy Cohen, James Hetherington, Mark Turner, Alys Brett, Catherine Jones, Christopher Woods, Andy Turner, Claire Wyatt

Editor's Notes

  1. There are two problems in Computer Science: We only have one joke It’s not funny