Leave us your email address and we'll send you all the new jobs according to your preferences.

Research Software Engineer (Mathematics and Statistics)

Posted 8 days 3 hours ago by University of Glasgow

Permanent
Full Time
Research Jobs
Renfrewshire, Glasgow, United Kingdom, G44 3
Job Description

Job Purpose

Sitting within the Research Computing as a Service team within University Services, the Research Software Engineer (Mathematics and Statistics) will play an essential role in leading the design, development, and maintenance of research software solutions that support and facilitate the research agenda of the School of Mathematics and Statistics within the College of Science and Engineering (CoSE). Assuming the role of technical software engineering expert, the role holder will deliver innovative and efficient solutions that support the pipeline of research impact in the School of Mathematics and Statistics.

The role demands excellent programming skills and development experience. The successful candidate will work with research teams within the School to develop research code (typically written in Python or R) in portable applications with user-friendly end user graphical interfaces. They will be proficient at testing and evaluating the utility, usability and integrity of software outputs.

Main Duties and Responsibilities

  1. Lead the design, implementation and management of high quality research software that satisfies School and by extension College research needs, and conforms with University policies and more general best practice (e.g. as advocated by the Software Sustainability Institute).
  2. Plan and organise workload priorities, determining individual and (where appropriate) team objectives.
  3. Lead in the development and maintenance of the front-end and back-end components of research software applications using industry-standard languages and frameworks including core software languages and applications such as Python and RStudio.
  4. Translate complex research requirements to suitable software solutions, reporting progress to relevant research stakeholders and RCaaS Software Engineering team colleagues as appropriate.
  5. Develop and maintain comprehensive documentation of software designs, deployment, and standard operating procedures, ensuring the management, version control and deployment in suitable repositories of software outputs.
  6. Support the adoption of sector best-practices for the development of new research software and relevant training of staff.
  7. Manage thorough testing and quality assurance activities to ensure the reliability, security, and functionality of developed software, documenting test cases and results as needed.
  8. Keep up to date with new developments in research software engineering as part of continuous professional development to enhance the School of Mathematics and Statistics research offering.
  9. Continually review and analyse the deliverables of the function and present recommendations of improvements via briefings, presentations or written reports to relevant teams and stakeholder communities to inform decision making.
  10. Share knowledge with other members of the team by leading group discussions, be responsible for decision making and where appropriate direction and supervision of team members.

Knowledge/Qualifications, Skills, Experience

Knowledge/Qualifications

Essential:

  1. Ability to demonstrate the competencies required to undertake the duties associated with this level of post having acquired the necessary knowledge and skills in a similar role.
  2. Or: Scottish Credit and Qualification Framework level 9, (Ordinary Degree, Scottish Vocational Qualification level 4), or equivalent (including professional accreditation with relevant formal training), and experience of personal development in a similar or related role(s).
  3. Knowledge of the challenges and issues associated with undertaking mathematical sciences research or research within a related discipline.
  4. Knowledge of a range of research programming languages and technologies including Python, R, C++, HTML, CSS, Javascript and web application frameworks.
  5. Proven expert knowledge of developing software applications with end-user graphical interfaces.
  6. Comprehensive knowledge of modern database management systems.
  7. Knowledge of at least one development Framework, e.g. Flask, Django, Dash.
  8. Knowledge of developing containerised software solutions.
  9. Knowledge of developing research software solutions in a broad and complex technical environment.

Desirable:

  1. A degree in Computing, Computer Programming or Engineering programming.
  2. Knowledge of automated testing frameworks.
  3. Understanding of network security and internet protocols.
  4. Knowledge of developing software for high performance computing including GPU.
  5. Knowledge of specialist programming languages used in mathematical sciences research such as MATLAB and COMSOL.

Skills

Essential:

  1. Extensive software engineering skills gained over a substantial period, working at higher levels of complexity within research intensive environments.
  2. Proven technical problem-solving skills and attention to detail, with an expert ability to analyse complex requirements and design effective software solutions.
  3. Proficient in designing and maintaining databases.
  4. Ability to deal with a large variety of end users with a range of technical knowledge including the ability to understand, conceptualise and interpret technical requirements to design and develop software solutions.
  5. Ability to learn and adapt to changing technologies, policies/procedures and cyber threats.
  6. Excellent analytical skills with confidence to challenge and continually improve, diving into the detail as necessary to understand issues (people, process, and technology).
  7. Ability to plan and prioritise a technical service to meet long term strategic objectives, whilst delivering a day to day service.
  8. Highly effective communication and interpersonal skills, demonstrating creative and innovative thinking and influencing senior members of an organisation.

Desirable:

  1. Ability to use testing frameworks.
  2. Ability to effectively teach and train users of technical and non-technical backgrounds.
  3. Using a developer platform such as GitHub or GitLab to manage projects.
  4. Ability to effectively teach and train users of technical and non-technical backgrounds.
  5. Using CI/CD processes such as GitHub Actions or Drone.
  6. Using code-assistants such as Copilot or Codeium.

Experience

Essential:

  1. Significant experience in a complex research computing environment supporting users from mathematical sciences and/or related disciplines.
  2. Significant experience in developing and deploying fully functional applications using current programming languages while adhering to best practices and industry standards.
  3. Significant experience of using a source code management system to manage source code during its full lifecycle.
  4. Significant experience using databases.
  5. Significant experience of creating test plans and defining the test approach used during each development.

Desirable:

  1. Prior experience of working in a university or Higher Education environment.
  2. Delivery of projects using Agile tools and techniques.
  3. Experience in support for a variety of systems, e.g. Windows, Linux, MacOS, Android, iOS.

Terms and Conditions

Salary will be Grade 7, £40,247 - £45,163 per annum.

This post is full time and open ended.

Closing Date: 23:th March 2025

The University of Glasgow has a responsibility to ensure that all employees are eligible to live and work in the UK. If you require a Skilled Worker visa to work in the UK, you will be required to meet the eligibility requirements of the visa route to be assigned a Certificate of Sponsorship.

Please note that this post may be eligible to be sponsored under the Skilled Worker visa route if tradeable points can be used under the Skilled Worker visa rules. For more information please visit:

Email this Job