Concurrency safety: Threads, locks and race conditions
A ready-made course you customise for your organisation, with a live session deck and two surveys. You only add the 6 details that are specific to your organisation.
- Length
- 40 min
- Lessons
- 6 lessons
- Frequency
- At onboarding of back-end engineers
- Last reviewed
- 21 Oct 2026
Five workers may use only three database connections
Try it: this is one of 15 interactive activities in the course.
What's included
Three pieces that work together
Copy once, get everything. Learners prepare on their own, you answer questions live, and the surveys tell you what stuck.
Self-paced course
Short lessons with real workplace scenarios, not walls of text.
- 6 lessons, about 40 minutes
- Timeline, scenario, sorting activity, flashcards and quizzes
Live session deck
An AhaSlides presentation to run after the course, in person or online.
- 10 slides
- Quiz, poll, ranking, word cloud slides
- A closing slide for your contacts
Two surveys
Find out what landed, and whether people use it on the job.
- Post-course feedback, about 2 minutes
- 30-day check-in
- Anonymous by default
- Results feed your next refresher
Learning objectives
At the end of this course, learners can
Each objective and the lesson that covers it.
| ID | Objective | Source | Where it's covered |
|---|---|---|---|
| TO 353.0 | Achieve ≥ 80% on the final assessment | - | Whole course |
| SO 353.1 | Distinguish threads, processes and async tasks | Best practice | Whole course |
| SO 353.2 | Choose between a mutex, a semaphore and a lock-free approach for a stated use | Best practice | Whole course |
| SO 353.3 | Explain how a race condition arises and fix it | CWE-362 (reference) [check before build] | Whole course |
| SO 353.4 | Spot a deadlock and break it by ordering locks | Best practice | Whole course |
| SO 353.5 | Review concurrent code against your team's rules + your info | SEI CERT concurrency rules (reference) [check before build] | Whole course |
Your part: what a template can't do for you
- Your workplace details: fill in the 6 highlighted fields so the course describes your own policies, contacts and locations.
- Records: record completion in your own LMS or record system.
Course outline
6 lessons, about 40 minutes
Minutes per lesson are an estimate, shared out by page count.
1A counter that was wrong every tenth run
3 pages
8 min
A counter that was wrong every tenth run
3 pages
2Threads, processes and async
3 pages
8 min
Threads, processes and async
3 pages
3Locks, mutexes and semaphores
3 pages
8 min
Locks, mutexes and semaphores
3 pages
4Race conditions and deadlock
2 pages
6 min
Race conditions and deadlock
2 pages
5Concurrency patterns by language
2 pages
5 min
Concurrency patterns by language
2 pages
6Reviewing concurrent code and final assessment
2 pages
5 min
Reviewing concurrent code and final assessment
2 pages
Live deck and surveys
10 slides to run live, two surveys to close the loop
Pink slides are interactive. Both surveys are anonymous; pink questions are written for this course.
Post-course feedback: 11 questions, about 2 min
- Overall rating 5 stars
- Relevant, realistic, right length, helpful activities agree/disagree grid
- What was most useful? multi-select
- Confidence before this course, and now 1-5 scale
- Confidence in threads · locks · races · deadlock · async grid
- Does your code share state between threads? multiple choice
- Which concurrency bug was hardest to find? short text
- I can say ‘I am not sure this is thread safe’ without feeling judged. 1-5 scale
- One thing we should change or add open text
- Would you recommend this course? NPS
30-day check-in
- Have you used what you learned since the course? multiple choice
- How confident are you today? Compare with day 1 1-5 scale
- Do you know where to find the concurrency review checklist? yes / no / not sure
- A moment where the training helped, or where you weren't sure open text
- Which topics should the next refresher focus on? ranking
Results show whether people use the training on the job, not just whether they finished it.
Make it yours
6 fields to fill in, and you're ready
Everything else is done. These are the details only your organisation knows; each one is highlighted inside the course.
- Link to the engineering standards or style guide
{{ENGINEERING_STANDARDS_LINK}} - Where completion is recorded
{{LMS_OR_RECORD_SYSTEM}} - Link to the post-course and 30-day survey
{{SURVEY_2_URL}} - Who to ask for help or to report a concern
{{HELP_CONTACT}} - Link to the self-paced course
{{COURSE_URL}} - Link to the baseline survey
{{SURVEY_1_URL}}
FAQ
Common questions
Can I run concurrency safety: Threads, locks and race conditions training online?
Yes. The course is self-paced and online, and the live deck lets you add a live session in the room or online.
How often is this training needed?
At onboarding of back-end engineers, and after a race-condition incident.
Who needs this training?
Back-end developers and systems engineers; run by senior engineers and engineering managers with L&D.
What records should I keep?
Record completion in your own LMS or record system, so you can show who finished the course and when.
Can I edit the content?
Yes, everything. Change the wording, swap scenarios for ones from your workplace, add your logo, or remove parts that don't apply.
Related templates
Often taught together
Front-end engineering standards: HTML, CSS, javascript and typescript in practice
Front-end and web developers · Software Development Courses
Logging, error handling and observability standards for developers
Developers on enterprise platforms and the code reviewers · Software Development Courses
Enterprise platform developer onboarding: Your first safe change to a business platform
New developers joining a team that builds on a configurable business platform · Software Development Courses
API design and microservices standards: REST, openapi and events
Back-end engineers · Software Development Courses
Ready to run it?
Open the live deck to see how the session runs alongside the course and both surveys.