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.

University of California, Santa Cruz
Skills you'll gain: C++ (Programming Language), Go (Programming Language), File I/O, Data Structures, Object Oriented Programming (OOP), Software Design Patterns, Debugging, Computer Programming, Unit Testing, Programming Principles, Algorithms, C (Programming Language), Integrated Development Environments, Graph Theory, Software Testing, Artificial Intelligence, Integration Testing, Software Design, System Design and Implementation, Game Design
Intermediate · Specialization · 3 - 6 Months
University of Michigan
Skills you'll gain: Programming Principles, Computer Programming, Python Programming, Computational Thinking, Software Installation, Development Environment
Beginner · Course · 1 - 3 Months

Skills you'll gain: Software Development Life Cycle, Linux Commands, Software Architecture, Bash (Scripting Language), Restful API, Shell Script, Git (Version Control System), GitHub, Flask (Web Framework), Software Design, Version Control, File Management, Application Deployment, Linux, Software Development Methodologies, Software Design Patterns, Data Import/Export, Programming Principles, Web Scraping, Python Programming
Beginner · Specialization · 3 - 6 Months
École Polytechnique Fédérale de Lausanne
Skills you'll gain: Scala Programming, Programming Principles, Object Oriented Programming (OOP), Functional Design, Computer Programming, Data Structures, Integrated Development Environments, Algorithms, Computational Thinking, Unit Testing
Intermediate · Course · 1 - 3 Months

University of California San Diego
Skills you'll gain: Event-Driven Programming, Interactive Data Visualization, Java, Java Programming, Object Oriented Programming (OOP), User Interface (UI), Object Oriented Design, Computer Programming, Algorithms, Software Engineering, Data Structures, Programming Principles, Software Documentation, Development Environment, Debugging
Intermediate · Course · 1 - 3 Months

Vanderbilt University
Skills you'll gain: Matlab, Algorithms, User Interface (UI), Object Oriented Programming (OOP), Mathematical Software, Computer Programming, Programming Principles, Application Development, Engineering Analysis, Scripting, Performance Tuning
Intermediate · Course · 1 - 3 Months

Coursera
Skills you'll gain: Distributed Computing, Scalability, Performance Tuning, C++ (Programming Language), System Programming, Computer Architecture, Cross Platform Development, Hardware Architecture, C (Programming Language), Application Performance Management, Development Environment
Beginner · Course · 1 - 4 Weeks

University of Geneva
Skills you'll gain: Data-oriented programming, Operating Systems, Simulation and Simulation Software
Intermediate · Course · 1 - 3 Months

Rice University
Skills you'll gain: Java Programming, Java, Data Structures, System Programming, Programming Principles, Debugging, Algorithms, Performance Testing
Intermediate · Course · 1 - 3 Months

University of Cape Town
Skills you'll gain: Jupyter, Statistical Analysis, Data Visualization, Plot (Graphics), Scientific Visualization, Exploratory Data Analysis, Data Manipulation, Data Science, Other Programming Languages, Statistical Hypothesis Testing, Computer Programming, Mathematical Modeling, Package and Software Management
Beginner · Course · 1 - 4 Weeks

The University of Edinburgh
Skills you'll gain: Software Engineering, Programming Principles, Animation and Game Design, Software Development, Software Design, Event-Driven Programming, Computer Programming, Computational Thinking, Debugging, Algorithms
Beginner · Course · 1 - 3 Months
University of Michigan
Skills you'll gain: Data Structures, Data Processing, Data Analysis, Python Programming, Data Manipulation, Software Installation, Development Environment
Beginner · Course · 1 - 3 Months