The Research Technology Platform in Scientific Computing provides support for software development through the Research Software Engineering (RSE) group. The aim of RSE is to provide both a general training, support and consultancy service for our users, and also to supply a reservoir of expertise that can be made available to funded projects on an FTE basis. RSE support is paid for through grant income, but many of our services are available for free to any University of Warwick researcher. Research groups that make use of RSE training are asked to add costs to grant applications as detailed on the funding page to cover the cost of providing training.
RSE Standard Training
RSE training provides a set of "off the shelf" courses and resources to help your group get started with research computing, make the most of the hardware platforms made available through the RTP, and gain useful software development skills. The training list is still being finalised, but will probably include the following :
- Curated list of available external resources, with support to help identify the resources you need.
- Introduction to RTP resources
- Basic use of Linux
- Basic concepts in programming
- Programming for daily use
- Programming for software development
- Software development skills
- Version control
- Build tools
- Software design methodology
- Parallel and high performance software development
- Using HPC facilities
- HPC Midlands Plus
RSE training is currently partly funded by the HPC Midlands Plus grant, and provides support on porting code to this machine.
RSE Custom Training
The RSE group can also provide custom training for your research group or DTC. Please contact us to discuss your training needs.
The RSE group also provides limited consultancy support and tailored advice. This includes
- Language and library selection
- Software design support
- Assistance with selection of hardware
- HPC access assistance
- Which HPC resources are available and suit your needs
- How to apply for HPC time
- How to prepare the documentation needed for access to Tier 0, 1 and 2 HPC facilities.
This support is not a substitute for seconded RSE time, and does not involve an RSE working on your code.
To provide more hands on support for groups that do not need seconded RSE time, we intend to offer a bi-weekly (every two weeks) surgery session. The aim of this is to bring together researchers who write software and members of the RSE group in an informal setting. We hope to be able to help people with a variety of problems in a more hands on way than through our consultancy mechanism, and also to encourage discussion between people working on similar problems. More details on these will be posted soon.
We also offer a service where a fraction of one or more RSE staff is funded by your grant income, and work on a project that has been designed by you with input from the RSE group. Any project that needs extensive software development would be suitable for seconded RSE support, but examples include
- Extension of existing software with new features
- Modernisation/redesign of existing software
- Scaling-up or optimisation of existing software to utilise high performance computing
- Modification of software to run on novel architechtures
- Developing new software packages (usually as part of a development team working with domain specialists)
If you have a project that you feel would benefit from having a seconded RSE developer working on it, then please contact the RSE group before applying for funding for the project so that we can assist in writing the grant application, and to make sure that we have (or can aquire) the necessary resources.
External RSE Consultancy
We also offer consultancy in High Performance Computing and Technical Software Development via the University of Warwick's Scientific Services platform. Details of this can be found here (software development and here (HPC)