The UK invested £5.8 billion into research in the 2015-16 financial year. According to a study by the Software Sustainability Institute, at least 69% of this research – reflecting an investment of around £4 billion – is reliant on software. Research cannot be conducted without software, but much of academia has yet to realise the scale of their dependence on software. Without access to software engineering expertise, research software is significantly less likely to meet the requirements of reliability and reproducibility that we expect from research.
We can improve access to software engineering skills by training researchers. Many researchers are gifted software engineers, but it is simply not practical to expect all researchers to follow this example – we cannot expect all researchers to become polymaths. Researchers should be able to concentrate on their research and gain expert help when it is needed. Consultant software engineers can be hired, but this is expensive and consultants generally lack knowledge of the idiosyncrasies of research environment and the goals and working practices of researchers. What is needed is a new role in academia – the Research Software Engineer – a role that combines an intimate understanding of research with experience in software engineering.
There is no career path for Research Software Engineers within universities, but this does not mean they do not already exist in the research community. Project investigators have long understood the importance of software engineering to research, but to acquire that expertise without a formal career path they have turned instead to postdoctoral positions. In effect, this means recruiting someone to write code into a role that is judged by the number of papers they write. It locks an important contributor into a career that cannot be progressed and, for this reason, many people who work in these positions leave to pursue a career in which their skills are recognised and rewarded.
The growing reliance of research on software will be accompanied by increasing demand for the expertise of Research Software Engineers. The UK is leading the world in recognising both the community’s reliance on software and the importance the people who write that software. Our recognition of the importance of software engineering to research presents a wealth of opportunities to both advance research by harnessing the advance software techniques, and to ensure those results are reliable and reproducible. But to gain these benefits, we must ensure that the research community has access to the right skills, which means academia must support Research Software Engineers by providing a career path for them.