SIAM News Blog
SIAM News
Print

Research Software Engineer: A New Career Track?

By Chris Richardson and Mike Croucher

In 1675, Isaac Newton famously wrote in a letter to Robert Hooke, “If I have seen further, it is by standing on the shoulders of giants.” Perhaps he was not being entirely kind to his colleague and rival, but the general idea pervades the sciences to this day: we rely on others’ work to advance our own. This has never been truer than in the world of research software.

Software written for academic purposes has a poor reputation for reliability and reusability. It is not uncommon to hear about a newly-developed software in one’s research area, only to find that it has no documentation, does not compile on all systems, yields errors, or is out of date. Given the lack of incentive for academics to devote precious time to write documentation, test code on other systems, or even keep it working, this is no surprise. Once researchers have found solutions to their specific questions and published a few papers with their code’s outputs, there is little reward in continuing to advance software developed for this purpose.

Recognising this problem, several like-minded individuals at the University of Southampton, the University of Oxford, the University of Edinburgh, and the University of Manchester came together in 2010 to form the Software Sustainability Institute (SSI). With the tagline “better software, better research,” they have been promoting “software carpentry,” “collaborations workshops,” and specialized software conferences in the U.K. An SSI survey found that 70 percent of researchers relied on software for their results, and over 50 percent wrote their own software. By advocating for revision control, automated testing, and open-source development, SSI’s founders have significantly impacted research software, both in the U.K. and internationally. However, it soon became clear that encouraging better research software practices could only produce limited results, as most academics had very little time to focus on it. Those that did were failing to advance in their careers because they had spent too much time producing software for everyone else’s benefit. While Newton was able to give up his theological studies to devote himself to the new field of science, most researchers do not have the luxury of abandoning publication to concentrate on software development.

The SSI leadership reasoned that the best way to improve software quality was to invent a new career track with a different set of metrics. The term “research software engineer” (RSE) was coined at an SSI-sponsored event to describe a career track principally devoted to software within the research community. In January 2014, the U.K. Research Software Engineer (UKRSE) Association was formed to provide advice and support to anyone who identifies as an RSE. The association is free to members. Around this time, a few U.K. universities began experimenting with “research software groups” (RSGs) — teams comprised of programmers not dedicated to any specific project, but instead available as resources across the university. Providing a mechanism to interact with academics and conduct the maintenance, testing, and documentation that otherwise would not occur has produced better-quality software. The experiment was a success, and the model has spread across the country.

Attendees at the Second Conference of Research Software Engineers, held in Manchester, U.K., in September 2017.

Of course, nothing happens without funding. The funding model adopted by most research software groups involves underwriting a core set of positions and services with central university funds. Academics can then access this pool of resources by including an RSE element in their grant proposals, which is then charged back to the RSE pool. This model helps universities retain talented RSEs and provides both additional flexibility for academics and a stable career pathway for the RSEs themselves.

Several funding councils have supported this model, with the U.K.’s Engineering and Physical Sciences Research Council (EPSRC) taking the lead. EPSRC provided the initial funding for the SSI (subsequently joined by the Biotechnology and Biological Sciences Research Council and the Economic and Social Research Council), along with funding for a fundamentally different type of research fellowship — the RSE Fellowship.

The EPSRC RSE Fellowship scheme has funded 11 fellows across two funding calls thus far. The programme funds each individual for a five-year period and offers participants a great deal of freedom to develop as leaders in their institutions. Projects are highly varied and include development of specialised software, establishment of RSGs and national RSE networks, exascale and accelerator-based computing, data visualisation, and diverse training programs.

More work must be done in the areas of role definition and job specification. Although many job postings claim to seek RSEs, institutional human resources departments have not yet caught up with the trend and generally pigeonhole applicants as technical support or academics. On the other hand, the RSE job description can sometimes overlap with these existing roles. Finding the right solution may take some time.

Ultimately, RSE advancement in the U.K. has been a great success so far. The UKRSE Association currently has over 1,000 members and continues to grow, adding about 200 more each year. The association’s second conference  was held at the Museum of Science and Industry in Manchester, U.K., in September 2017. The meeting brought together RSEs from 14 different countries, including many in Europe, and as far as Canada and New Zealand.

Chris Richardson has spent time in physics, mathematics, and geosciences departments in the U.K. and Japan, and now works at the University of Cambridge BP Institute as a research software engineer. He is a core developer in the open-source FEniCS finite element code, and an Engineering and Physical Sciences Research Council (EPSRC) Research Software Engineering Fellow. Mike Croucher is also an EPSRC Research Software Engineering Fellow and co-founder of the Research Software Engineering Group at the University of Sheffield. Beginning in April 2018, he will be director of research computing at the University of Leeds.

blog comments powered by Disqus