Parallel programming courses can help you learn multithreading, synchronization, and performance optimization techniques. You can build skills in designing algorithms that efficiently utilize multiple processors and managing shared resources. Many courses introduce tools like OpenMP, MPI, and CUDA, that support implementing parallel computing solutions in various applications, from scientific simulations to data processing tasks.

Skills you'll gain: Data Structures, Development Environment, C++ (Programming Language), Debugging, Computational Thinking, Integrated Development Environments, Computer Programming
Beginner · Course · 1 - 4 Weeks

University of Colorado System
Skills you'll gain: Computational Thinking, Data Analysis, Analysis, C (Programming Language), Programming Principles, Data Structures, Descriptive Statistics, Data Visualization Software
Beginner · Course · 1 - 4 Weeks

Skills you'll gain: Bash (Scripting Language), Shell Script, Linux Commands, Unix Shell, Unix Commands, Linux Administration, Linux, Scripting, File Management, Unix, Command-Line Interface, Scripting Languages, Debugging, System Configuration, User Interface (UI), IT Automation, Interactive Design, Programming Principles, OS Process Management
Beginner · Specialization · 1 - 3 Months

Birla Institute of Technology & Science, Pilani
Skills you'll gain: Theoretical Computer Science, Computer Programming, Algorithms, Computer Science, Formal Learning, Software Engineering, Program Development, Text Mining, Data Science, Analysis, Machine Learning Methods, Debugging, Technical Analysis
Intermediate · Course · 1 - 3 Months

Skills you'll gain: Mathematical Software, Statistical Methods, Data Manipulation, Scripting, Software Installation
Intermediate · Course · 3 - 6 Months

Skills you'll gain: Analytics, Integrated Development Environments
Beginner · Course · 1 - 4 Weeks

Skills you'll gain: Programming Principles, Computer Programming, Software Design
Intermediate · Course · 1 - 3 Months

JetBrains
Skills you'll gain: Generative AI Agents, Large Language Modeling, Software Development Tools, IntelliJ IDEA, LLM Application, Artificial Intelligence, Agentic systems, Artificial Intelligence and Machine Learning (AI/ML), Responsible AI, Software Development, Code Review, Integrated Development Environments, Generative AI, Computer Programming, Software Development Life Cycle
Beginner · Course · 1 - 3 Months
University of Virginia
Skills you'll gain: Usability Testing, Agile Product Development, User Story, Continuous Delivery, Persona Development, Agile Software Development, Sprint Planning, Peer Review, Agile Methodology, Product Testing, Agile Project Management, Team Performance Management, Team Management, Design Thinking, Team Building, Customer Analysis, Analytics, Product Development, Business Analytics, Persona (User Experience)
Beginner · Specialization · 3 - 6 Months
University of Alberta
Skills you'll gain: Agile Software Development, Agile Methodology, Requirements Analysis, Software Development, Requirements Management, Product Management, Software Engineering, Project Planning, Process Development, Project Management
Mixed · Course · 1 - 4 Weeks

Microsoft
Skills you'll gain: Debugging, Program Development, Software Documentation, Pseudocode, C++ (Programming Language), Computational Thinking, Programming Principles, Computer Programming, Integrated Development Environments, Computer Programming Tools, Development Environment, Algorithms, Data Validation
Beginner · Course · 1 - 3 Months

Skills you'll gain: Object Oriented Programming (OOP), Debugging, Object Oriented Design, JSON, Program Development, Data Structures, Python Programming, Microsoft Visual Studio, Development Environment, Scripting, Maintainability, Integrated Development Environments, Package and Software Management, Programming Principles, Computer Programming, Web Scraping, Application Programming Interface (API), File Management, Scalability, Scripting Languages
Beginner · Specialization · 3 - 6 Months