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.

Duke University
Skills you'll gain: Debugging, File I/O, Programming Principles, Maintainability, Software Testing, Program Development, C (Programming Language), Algorithms, Simulations, System Programming, Computer Programming, Data Structures, Software Development, Software Engineering, Command-Line Interface, Development Environment, User Interface (UI), Solution Design, Problem Solving, Software Design
Beginner · Specialization · 3 - 6 Months

Skills you'll gain: Generative AI
Intermediate · Course · 3 - 6 Months

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

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

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

University of California, Santa Cruz
Skills you'll gain: C++ (Programming Language), Object Oriented Programming (OOP), Programming Principles, Software Design Patterns, Computer Programming, Algorithms, C (Programming Language), Graph Theory, Debugging, Artificial Intelligence, Data Structures, Game Design, Software Documentation
Beginner · Specialization · 3 - 6 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

Skills you'll gain: Data Import/Export, Programming Principles, Web Scraping, File I/O, Python Programming, Jupyter, Data Structures, Pandas (Python Package), Data Manipulation, JSON, Computer Programming, Restful API, NumPy, Object Oriented Programming (OOP), Application Programming Interface (API), Automation, Data Analysis
Beginner · Course · 1 - 3 Months

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

Princeton University
Skills you'll gain: Programming Principles, Computer Programming, Object Oriented Programming (OOP), Performance Tuning, Data Structures, Java Programming, Java, Program Development, File I/O, Computational Thinking, Computer Science, Algorithms, Animations, Debugging
Beginner · Course · 1 - 3 Months

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