
Develop the essential skills needed to work effectively in computational research environments through this course.
Navigating and Working in HPC Environments provides a practical introduction to Bash, equipping you with the essential skills to interact with and manage Linux-based systems effectively.

Dive into Git, the industry-standard version control system, and learn how to manage your code and collaborate effectively as part of a team.
Managing Code and Collaborating Effectively provides a practical introduction to Git, equipping you with the essential skills to organise, track, and safeguard your code while collaborating seamlessly within teams.

Master the core principles of Software Engineering and gain the skills to write clear, efficient, and maintainable code for HPC applications through this course.
Building Robust and Maintainable Code provides a practical introduction to Software Engineering, developing your understanding of good programming practices and preparing you to build reliable software for research and technical applications.

Understand the importance of good documentation, code review processes, and testing practices, and their impact on the long-term viability of HPC code.
Ensuring Quality and Reliability in Code provides a practical introduction to software testing, documentation, and code review, equipping you with the essential skills to produce reliable and maintainable software.

Explore the challenges of scalability and learn how to address them to develop efficient parallel code for HPC environments.
Developing Efficient Parallel Code provides a practical introduction to key concepts to successful HPC applications, such as scalability and parallel computing, helping you navigate scaling issues and troubleshoot them to build efficient parallel code.