Level 3 of 3
Advanced Level
Prerequisites
C++ Intermediate level, or equivalent: classes and lifetimes, inheritance, the STL, exceptions, CMake and debugging.
Duration
12 weeks · 140 guided hours · 6 modules. Taught live by an instructor — online or in person.
By the end of this level you can
- Write generic code with templates and constrain it with concepts
- Manage ownership with smart pointers and move semantics
- Use modern C++17/20 features to write clearer, safer code
- Test, profile and optimise C++ code based on measurements
- Write correct concurrent code and deliver a tested capstone project
Modules
- 1Module 1 · 22 h · 4 lessonsTemplates and Generic Programming
- 2Module 2 · 24 h · 4 lessonsModern Memory Management
- 3Module 3 · 20 h · 4 lessonsModern C++17 and C++20 Features
- 4Module 4 · 22 h · 4 lessonsTesting and Performance in C++
- 5Module 5 · 22 h · 4 lessonsConcurrency in Modern C++
- 6Module 6 · 30 h · 5 lessonsC++ Capstone Project
Advanced level project
Offline Sensor Data Processor
A command-line tool that reads large logs from solar-powered sensor stations, validates and summarises them in parallel, and writes daily reports — designed for slow, offline computers.
Deliverables
- A CMake project with a library and a command-line executable
- Parsing, validation, statistics and report generation for sensor logs
- A parallel processing mode with a measured speed-up
- Unit tests, a benchmark report and a README
Assessed on
- Results are correct and identical in sequential and parallel modes
- Ownership is clear: no raw new/delete, no leaks or races under sanitizers
- Performance claims are backed by measurements on realistic data
- The code uses modern C++ idioms and builds cleanly from the README
All levels are taught live by an instructor — online or in person — see registration options.