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: Object Oriented Programming (OOP), Unit Testing, Test Driven Development (TDD), Programming Principles, Software Testing, Data Structures, Python Programming, Computer Programming, Development Environment, Integrated Development Environments, Debugging, Django (Web Framework), Cloud Hosting
Beginner · Course · 1 - 3 Months
University of London
Skills you'll gain: Computer Science, Debugging, Development Environment, Computer Systems, Web Applications, Arithmetic, Computer Literacy, Javascript, Network Security, Computer Networking, Computer Programming Tools, Applied Mathematics, Computer Graphics, Web Design and Development, Software Development Tools, Cybersecurity, Computational Thinking, Computer Programming, General Mathematics, Problem Solving
Build toward a degree
Beginner · Specialization · 1 - 3 Months
University of California, Santa Cruz
Skills you'll gain: Programming Principles, Software Documentation
Beginner · Course · 1 - 3 Months

Skills you'll gain: Java Programming, Java, Development Environment, Computer Programming, Integrated Development Environments, Object Oriented Programming (OOP), Data Structures, File I/O, Debugging
Beginner · Course · 1 - 3 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
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), Program Development, 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

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, Operating Systems, Development Environment, User Interface (UI), Problem Solving, Software Design
Beginner · Specialization · 3 - 6 Months

Skills you'll gain: IT Security Architecture, Computer Networking, Operating System Administration, Package and Software Management, Network Troubleshooting, Version Control, IT Automation, Systems Administration, IT Infrastructure, TCP/IP, Git (Version Control System), Chef (Configuration Management Tool), Network Security, Ruby (Programming Language), File Systems, Microsoft Windows, Computer Hardware, Technical Support, Interviewing Skills, Applicant Tracking Systems
Build toward a degree
Beginner · Professional Certificate · 3 - 6 Months

Skills you'll gain: Program Development, Programming Principles, Python Programming, Computer Programming, Computational Thinking, Problem Management, Data Structures, Integrated Development Environments, Debugging, Development Environment
Beginner · Course · 1 - 3 Months

University of London
Skills you'll gain: Pseudocode, C++ (Programming Language), Object Oriented Programming (OOP), C and C++, File I/O, Object Oriented Design, Integrated Development Environments, Computer Programming, Development Environment, Programming Principles, Debugging, Data Structures, Program Development, Algorithms, Interactive Design, Data Modeling, Model Evaluation, Software Engineering, Test Data, Data Validation
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, File I/O, Embedded Software, Software Visualization, Programming Principles, Computer Engineering, Linux Servers, File Systems, System Programming, Algorithms, Computer Architecture, Computer Programming, Software Documentation, Computer Science, Software Engineering, Debugging
Beginner · Specialization · 3 - 6 Months

University of Pennsylvania
Skills you'll gain: Computational Thinking, Algorithms, Program Development, Pseudocode, Problem Solving, Python Programming, Data Structures, Computer Hardware, Computer Programming, Object Oriented Programming (OOP), Analysis, Debugging
Beginner · Course · 1 - 4 Weeks