Skip to content

Development tools

Technology stack

In recent years we have expanded our tech stack, adopting tools like GitHub Enterprise, Google Cloud Platform (GCP) and PostgreSQL and programming languages like Python. However, teams in Operations and Primary Care and Mental Health primarily use the following:

CATEGORY TOOLS
DEVOPS - Azure DevOps
DEV ENVIRONMENT - Visual Studio or Visual Studio Code (preferred) - Git - SQL Toolbelt Essentials (mandatory when writing T-SQL) - HL7Edit
SERVER-SIDE DEVELOPMENT - .NET / ASP.NET with C# - Microsoft SQL Server with T-SQL - Azure
FRONT-END DEVELOPMENT - ASP.NET MVC with C# - .NET MAUI - Blazor - Client-side JavaScript

Practical tips

A common toolset reduces complexity and avoids additional licencing costs.

Activate software subscriptions

Development tools are not preinstalled on your laptop. Your line manager typically arranges a software subscription so you can install the tools. If not, follow our guide to request and manage subscriptions.

Setting up the development environment

Our primary tools include Visual Studio, SQL Server Management Studio and Azure DevOps. Use the links below to set up your environment. Read our Azure DevOps Handbook to support its use.

Practical tips

  • Run Visual Studio as a standard user to follow the principle of least privilege.

  • Use IIS Express instead of IIS.

  • For new projects, consider SQL Server Developer Edition.

Keep frameworks up to date

You SHOULD keep frameworks and dependencies current to minimise security risks.

Practical tips

CANISC cyber security concerns

In 2018, the National Assembly Public Accounts Committee flagged CANISC, the all-Wales Cancer system, as a cyber security risk due to discontinued Microsoft security updates.

Evaluating and adopting new tools

If you need to use new or alternative tools you SHOULD follow these rules:

  • Use widely adopted frameworks: Choose those with dedicated support, follow open standards and have good documentation.

  • Check licencing: Ensure Terms and Conditions are suitable for use.

  • Learn from others: Base decisions on the experience gained by other teams.