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 Import/Export, Programming Principles, Web Scraping, Python Programming, Jupyter, Data Structures, Data Processing, Pandas (Python Package), Data Manipulation, JSON, Computer Programming, Restful API, NumPy, Object Oriented Programming (OOP), Scripting, Application Programming Interface (API), Automation, Data Analysis
Beginner · Course · 1 - 3 Months

École Polytechnique Fédérale de Lausanne
Skills you'll gain: Scala Programming, Apache Spark, Apache Hadoop, User Interface (UI), Programming Principles, Big Data, Software Design, Data Structures, Software Design Patterns, Functional Design, Data Manipulation, Object Oriented Programming (OOP), Heat Maps, Data Visualization Software, Interactive Data Visualization, Computer Programming, Distributed Computing, Data Processing, Real Time Data, Performance Tuning
Intermediate · Specialization · 3 - 6 Months

University of London
Skills you'll gain: Pseudocode, C++ (Programming Language), Object Oriented Programming (OOP), C and C++, Object Oriented Design, Integrated Development Environments, Computer Programming, Programming Principles, Debugging, Data Structures, Program Development, Algorithms, Interactive Design, Data Modeling, Software Engineering, Test Data, Data Validation, User Interface (UI), Unit Testing, Data Management
Build toward a degree
Intermediate · Specialization · 1 - 3 Months
Dartmouth College
Skills you'll gain: Command-Line Interface, C (Programming Language), Linux Commands, Linux, Embedded Systems, Embedded Software, Software Visualization, Programming Principles, Computer Engineering, Linux Servers, File Systems, System Programming, Build Tools, Algorithms, Computer Architecture, Computer Programming, Software Documentation, Computer Science, Software Engineering, Debugging
Beginner · Specialization · 3 - 6 Months

Duke University
Skills you'll gain: Rust (Programming Language), Containerization, Data Pipelines, CI/CD, Docker (Software), Jenkins, DevOps, Large Language Modeling, Restful API, Serverless Computing, Generative AI, Amazon Web Services, Development Testing, Software Testing, Maintainability, Command-Line Interface, Prometheus (Software), Natural Language Processing, Computer Programming, Cloud Computing
Beginner · Specialization · 3 - 6 Months

University of California, Irvine
Skills you'll gain: Go (Programming Language), Back-End Web Development, Object Oriented Programming (OOP), System Programming, Debugging, Algorithms, OS Process Management, Functional Design, Computer Programming Tools, Data Access, Data Structures, Software Design, Operating Systems, Computer Architecture
Intermediate · Specialization · 3 - 6 Months

University of California, Santa Cruz
Skills you'll gain: C++ (Programming Language), C (Programming Language), Object Oriented Programming (OOP), Programming Principles, Software Design Patterns, Debugging, Computer Programming, Object Oriented Design, Algorithms, Data Structures, Pseudocode, Command-Line Interface, Graph Theory, Artificial Intelligence, File Systems, Game Design
Beginner · Specialization · 3 - 6 Months

University of California, Santa Cruz
Skills you'll gain: C++ (Programming Language), Go (Programming Language), Data Structures, C and C++, C (Programming Language), Object Oriented Programming (OOP), Programming Principles, Software Design Patterns, Debugging, Computer Programming, Object Oriented Design, Unit Testing, Integrated Development Environments, Algorithms, Pseudocode, Command-Line Interface, Graph Theory, Computer Science, File Systems, Artificial Intelligence
Intermediate · Specialization · 3 - 6 Months

École Polytechnique Fédérale de Lausanne
Skills you'll gain: Scala Programming, Data Structures, Distributed Computing, Algorithms, Performance Tuning, Functional Design, Performance Testing, Computer Programming
Intermediate · Course · 1 - 4 Weeks

Skills you'll gain: Object Oriented Programming (OOP), Object Oriented Design, Java, Java Programming, File Management, Application Development, Maintainability, Software Design, Development Environment, Program Development, Data Storage Technologies, Application Design, Programming Principles, Computer Programming, Data Structures, Data Management, Integrated Development Environments, Debugging
Beginner · Specialization · 3 - 6 Months

Johns Hopkins University
Skills you'll gain: Statistical Analysis, R Programming, Statistical Programming, Data Analysis, Debugging, Simulations, Computer Programming Tools, Program Development, Programming Principles, Data Structures, Performance Tuning, Data Import/Export
Intermediate · Course · 1 - 4 Weeks
University of California, Santa Cruz
Skills you'll gain: Go (Programming Language), Data Structures, C and C++, C (Programming Language), Programming Principles, Object Oriented Programming (OOP), Debugging, C++ (Programming Language), Computer Programming, Unit Testing, Integrated Development Environments, Computer Science, Pseudocode, Command-Line Interface, Algorithms, File Systems, Integration Testing, Software Design
Intermediate · Specialization · 3 - 6 Months