Research IT

Research Software Engineering Summer Update

In May Adrian Harwood, Head of Research Software Engineering (RSE), posted the first part of his update on the latest improvements to the RSE department. In his second part he summarises the more external facing improvements delivered by the RSE Levelling-Up Programme.

As promised, here is the second half of the spring update, with a special focus on the externally facing improvements delivered by the RSE department Levelling-Up Programme.

Part 2: External Improvements

Maintenance and Support Policy

Over the years, the department has developed a staggering number of applications, many of which remain in use to this day. However, software cannot be left alone for long before technological advances and emerging security threats make the software dangerously obsolete. Therefore, all software needs a degree of maintenance from time to time. Furthermore, if researchers require training or have questions about software that has been delivered in the past, they naturally ask the RSE team for advice. As you can imagine, ensuring we have sufficient RSE resource available year-round to provide support, training and do on-going maintenance of every solution we have ever delivered is an unsustainable situation. We therefore introduced a new Maintenance and Support Policy for the department which outlines options our customers have when they engage us to ensure we can still offer these services, but in a sustainable way.

Demand Management Process

Currently we are working on roughly 50 different projects for our researchers from across the University. We also received four new requests for RSE support alone this week. In total, there are nearly 100 projects in our demand pipeline at various stages (awaiting an outcome, funded and booked in, active, in maintenance etc.) all of which we need to keep track of.

One of the earliest deliverables from the LUP was the introduction of a formal demand management process to ensure the RSE leadership team (RSELT) are able to efficiently and consistently handle every request. This involves the definition of a scope through completion of a request template and filing that request in a new demand card management system run in Jira.

I also wrote a web application for capacity management and resource planning to allow us to play the huge time/skill Tetris game that is attempting to match our 40 RSEs to 100 projects running out until 2027. Needless to say, it is still a significant challenge, but the demand management process and tooling give us the best chance of doing this as well as we can!

You can help us out, and give yourself the best chance of securing an RSE, by ensuring you contact us well in advance of submitting a grant application so we can add your project to our schedule and start the search for a suitable RSE. If you already have the funding and you need someone at short notice, you are likely to be out of luck, with the lead time for an RSE currently at 6-10 months! Occasionally we have funding fall through at the last minute and someone becomes available at short notice, but it is rare. By all means, contact us on the off chance.

New Communities

I’m keen that the RSE department always remains outward looking and I continue to engage with the N8 CIR and national (and sometimes international) RSE community through various RSE meet-ups that run throughout the year. However, we also continue to grow our service to the research communities here in Manchester through the introduction, and planned introduction, of some new communities.

R User Group

Our own Kamilla Kopec-Harding has done a splendid job of reviving the R User Group at UoM (RUM) which has its own Teams channel in the Computation and Data in Research (CaDiR) workspace. It provides support, offers regular show-and-tell presentations and orchestrates meet-ups for those doing data science with R and has had a very positive impact since Kamilla has taken this on. The group is open to all researchers and PGRs at the University.

Python User Group

Nigel Green, one of our most versatile RSEs, is working on bootstrapping a University-wide Python community which is likely to appear towards the back-end of the year. As one of the most popular languages, particularly in those new to programming, the user-base across the University is significant. The community will aim to establish a space again on the CaDiR Teams workspace to share best practice, arrange events and meet-ups and provide support for those with Python-related technical problems. We are also looking at all of our Python courses to see how we can best update/reshape them to fit with what attendees need to get out of them. Nigel aims to link this in with the user group to get a better view of what we provide and how we can keep things evolving to fit the needs of the community.

University RSE Community

Finally, one of our relatively new RSEs, Aman Goel, also a Fellow of the Software Sustainability Institute (SSI), has been tasked to work with Gillian Sinclair (Research IT Relationship Manager) to establish a University-wide community for Research Software Engineering, Data Science and any others who may not have the title of RSE, but identify strongly with the type of work. There are many pockets of RSE activity all over the University from individuals all the way through to established groups embedded in labs or institutes. This new community will aim to provide something for everyone and draw together all those staff and students to share best practice and knowledge. Aman is deep in the planning stages having spoken to community leaders across the UK including the SSI and the Society of Research Software Engineering to help steer the design. They are hoping to run their inaugural event in the Summer of this year and aim to tie in with CaDiR and Open Research communities in due course - have a look at their first news update!

Agile Project Management

If you are currently working with the RSE department, you may have noticed that our RSEs are starting to move more towards using GitHub issue trackers to plan and record work. They will also be using GitHub projects to organise their work into 2-6 weekly iterations called sprints with regular reviews in the calendar to review the work completed with you at every iteration. This is part of a move to a) operate consistently across all our projects and b) to do so in an agile manner.

What you are seeing are some early-stage modifications to our ways of working that will ultimately be refined and captured more formally in a later LUP project. In the meantime, my colleague Ann Gledson and I, have been working on a new 2-day workshop to train all our RSEs in agile practices which we recently trialled on a group of (I hope willing!) RSEs on the NERC Digital Solutions Programme. We hope to continue to improve the material and run it later this year for the whole department. All being well, we may end up adding it to the Research IT training catalogue and we can even run it for your group if you’d like. The transition will be gradual at first as we get everyone warmed up to this but hopefully it will provide a better experience for both RSEs, managers and you, our customers.

Costing and Recovery Policy

The existence of the RSE department has always depended on the promise that the costs of our RSEs will be recovered from research grant income related to the project on which they are assigned. However, as the number of projects has scaled up, the ad-hoc way in which costing and, crucially, the recovery of the funds, was done is starting to become unsustainable.

I’ve drafted a costing and recovery policy to provide more transparency and consistency in how we do this. There will be an increased focus on filing Post and Contract Management (PCM) forms for staff to ensure recovery of RSE time is performed automatically rather than relying on one-off journal transfers to move funds around. The latter need manual intervention, sometimes regularly, and is a significant burden to administrative staff and RSELT to chase it up.

The policy also links in with the Research Support Office and the models used to cost RSEs to ensure what we charge is sufficient and we continue to meet our recovery targets. The policy is still under review with our finance teams but is an essential requirement for providing confidence when we want to increase our headcount, so I view it as a critical piece of work.

Feedback and Contact

If you have any questions or concerns, then please don’t hesitate to contact us via email. Your feedback on any of the changes delivered via the LUP as they are introduced is strongly encouraged.