Corporate training · Your team’s starting point
Build a learning path
around the work ahead.
Start with foundations, deepen a skill or connect a complete stack. Explore the concepts, practical work and project ideas, then shape the programme around your team.
- 35 sample curricula
- 5 training areas
- Live online and in person
Connect a complete stack
Choose a learning path.
Combine skills around the work your team needs to do.
Or focus on one skill
Explore the curricula.
See the foundations, practical work and project ideas for each course.
35 curricula · All training areas
Web development
9Web foundations: HTML, CSS & JavaScript
Build responsive, semantic web pages and understand how browsers, JavaScript, and HTTP work together.
- HTML
- CSS
- JavaScript
Advanced JavaScript
Strengthen your understanding of the language to debug confidently and write maintainable application code.
- JavaScript
- Browser DevTools
- Node.js
TypeScript
Make JavaScript applications easier to change with useful types, explicit contracts, and safer refactoring.
- TypeScript
- JavaScript
- Code editor
React
Build accessible, maintainable React interfaces with component composition, hooks, and thoughtful state management.
- React
- JavaScript / TypeScript
- React DevTools
Next.js
Connect React interfaces with server rendering, application routing, and deployment workflows.
- Next.js
- React
- TypeScript
Angular
Build structured Angular applications with typed components, reactive forms, and reliable API integration.
- Angular
- TypeScript
- RxJS
Vue.js
Create Vue applications with reusable components, shared state, and a practical testing workflow.
- Vue.js
- Pinia
- Vitest
Web accessibility
Make accessibility part of frontend implementation through semantic HTML, keyboard support, and practical testing.
- Semantic HTML
- Browser DevTools
- Screen reader
TanStack Query
Manage server state in React with clear query boundaries, mutations, and predictable cache behavior.
- TanStack Query
- React
- TypeScript
Backend, APIs & databases
9Node.js & Express
Build and test maintainable HTTP APIs, from request handling to authentication and database integration.
- Node.js
- Express
- Postman
Flask
Build Python web services with clear routes, database-backed features, and tests.
- Python
- Flask
- SQL
Django
Create structured Python applications with models, reusable views, and authenticated workflows.
- Python
- Django
- SQL
FastAPI
Design typed Python APIs with validation, documentation, and testable service boundaries.
- Python
- FastAPI
- SQLite / PostgreSQL
Java fundamentals & JDBC
Build a solid Java foundation, then connect application logic to relational databases through JDBC.
- Java
- JDK
- JDBC
Spring Boot REST APIs
Develop Java services with layered architecture, persistence, security, and integration tests.
- Java
- Spring Boot
- Spring Security
SQL & relational databases
Query and model relational data with practical exercises adaptable to MySQL, PostgreSQL, or MSSQL.
- SQL
- MySQL / PostgreSQL / MSSQL
- Database client
MongoDB
Model document data and build reliable queries, aggregations, and application integrations.
- MongoDB
- MongoDB Compass
- Node.js
GraphQL
Design GraphQL schemas and connect clients to predictable, secure API operations.
- GraphQL
- Apollo Server
- Node.js
Data engineering & AI
7Python programming
Learn Python through practical scripts, data processing, and reusable application logic.
- Python
- Code editor
- Jupyter
Python with AI capabilities
Connect Python applications with AI capabilities through practical integration, evaluation, and data handling.
- Python
- AI model APIs
- Jupyter
Data analysis with Python
Clean, explore, and communicate data with Python's analytics and visualization tools.
- Python
- Pandas
- NumPy
Databricks & Azure Databricks
Build lakehouse workflows with Python, SQL, Spark, and Delta Lake, including governance and pipeline delivery.
- Databricks
- Azure Databricks
- PySpark
Apache Spark & PySpark
Process larger datasets with distributed transformations, Spark SQL, and streaming foundations.
- Apache Spark
- PySpark
- Spark SQL
Azure Data Factory
Orchestrate repeatable data movement and transformation workflows across Azure data services.
- Azure Data Factory
- Azure storage
- Azure Databricks
Apache Airflow
Express data workflows as code with clear task dependencies, scheduling, and failure recovery.
- Apache Airflow
- Python
- SQL
Cloud & DevOps
5AWS foundations & application deployment
Connect AWS services with practical networking, access control, storage, and application deployment.
- AWS
- AWS CLI
- IAM
Docker
Package applications consistently and build repeatable local and deployment environments.
- Docker
- Docker Compose
- Container registry
Terraform
Manage cloud infrastructure as code with reviewable plans, reusable modules, and careful state handling.
- Terraform
- AWS / Azure
- Git
Kubernetes foundations
Learn the building blocks for deploying and operating containerized applications on Kubernetes.
- Kubernetes
- kubectl
- Docker
CI/CD & delivery workflows
Automate application or data pipeline delivery with clear build, test, and deployment stages.
- Git
- Jenkins / Azure DevOps / CircleCI
- Docker
Testing & developer workflows
5Git & collaborative development
Make version control part of everyday teamwork with reviewable commits, branches, and conflict resolution.
- Git
- GitHub / Git hosting
- Code editor
Jest & React Testing Library
Test the behavior users depend on with focused unit, component, and integration checks.
- Jest
- React Testing Library
- React
Cypress end-to-end testing
Check complete application journeys with reliable browser tests and useful failure diagnostics.
- Cypress
- JavaScript / TypeScript
- Browser
Vitest
Build fast, maintainable tests for JavaScript and TypeScript logic and Vue application features.
- Vitest
- JavaScript / TypeScript
- Vue.js
Linux, Vim & Neovim workflows
Work confidently in the terminal and build productive editing workflows for code and configuration.
- Linux
- Shell
- Vim
A starting point, not a fixed package
Need a combination of skills?
Share your team’s experience and the work ahead. We can agree the scope, pace, delivery and duration together.