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: Performance Tuning, Python Programming, OS Process Management, Scalability, Web Scraping, Database Management
★ 3.9 (14) · Intermediate · Course · 1 - 4 Weeks

University of Michigan
Skills you'll gain: C (Programming Language), Programming Principles, C and C++, C++ (Programming Language), Algorithms, Memory Management, Data Structures, Other Programming Languages, System Programming, Computer Programming, Python Programming, Numerical Analysis
★ 4.5 (102) · Intermediate · Course · 1 - 4 Weeks

University of Michigan
Skills you'll gain: Computational Thinking, Programming Principles, Problem Solving, Disaster Recovery, Algorithms, Computer Programming, Epidemiology
★ 4.6 (1.3K) · Beginner · Course · 1 - 3 Months
Duke University
Skills you'll gain: File I/O, UI Components, Object Oriented Design, Java Programming, Software Design, User Interface (UI) Design, Debugging, Web Design and Development, Software Engineering, Code Reusability, Hypertext Markup Language (HTML), Computer Programming, Program Development, Event-Driven Programming, Bioinformatics, Encryption, Javascript, Algorithms, Data Analysis, Cascading Style Sheets (CSS)
★ 4.6 (22K) · Beginner · Specialization · 3 - 6 Months

Skills you'll gain: Dashboard, Data Warehousing, Extract, Transform, Load, Data Storytelling, SQL, Data Visualization, Dashboard Creation, Database Design, Data Security, Data Governance, Data Presentation, Descriptive Statistics, Data Migration, Data Store, Relational Databases, Data Management, Data Architecture, Databases, Excel Formulas, Business Intelligence
★ 4.7 (19K) · Beginner · Professional Certificate · 3 - 6 Months

Skills you'll gain: Object Oriented Programming (OOP), File I/O, Data Persistence, Object Oriented Design, Java, Java Programming, File Management, Memory Management, Code Reusability, Application Development, File Systems, Maintainability, Computer Programming, Software Design, Development Environment, Program Development, Programming Principles, Computer Programming Tools, Data Structures, Integrated Development Environments
★ 4.6 (255) · 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, Network Administration, Information Systems Security, TCP/IP, Git (Version Control System), Chef (Configuration Management Tool), Network Security, General Networking, Ruby (Programming Language), Desktop Support, Web Presence, Interviewing Skills
★ 4.8 (216K) · Beginner · Professional Certificate · 3 - 6 Months

Skills you'll gain: Object Oriented Programming (OOP), Unit Testing, Test Driven Development (TDD), Test Script Development, Programming Principles, Software Testing, Data Structures, Python Programming, Program Development, Computer Programming, Development Environment, Debugging, Django (Web Framework), Functional Design, Package and Software Management, Cloud Hosting
★ 4.6 (1.9K) · Beginner · Course · 1 - 3 Months

IBM
Skills you'll gain: Data Storytelling, Dashboard Creation, Dashboard, Data Presentation, Plotly, Data Visualization Software, Web Scraping, Data Visualization, Data Wrangling, SQL, Plot (Graphics), Exploratory Data Analysis, Unsupervised Learning, Model Evaluation, Data Cleansing, Jupyter, Data Literacy, Generative AI, Professional Networking, Data Import/Export
★ 4.6 (151K) · Beginner · Professional Certificate · 3 - 6 Months

Microsoft
Skills you'll gain: Version Control, Git (Version Control System), Debugging, GitHub, Unit Testing, Code Reusability, Python Programming, Data Structures, Scripting, Programming Principles, Algorithms, Jupyter
★ 4.5 (606) · Beginner · Course · 1 - 3 Months
Multiple educators
Skills you'll gain: Unit Testing, Data Structures, Event-Driven Programming, File I/O, Interactive Data Visualization, Java, Java Programming, Object Oriented Design, Object Oriented Programming (OOP), User Interface (UI), Debugging, Software Testing, Computer Programming, Cryptography, Software Engineering, Bioinformatics, Algorithms, Data Analysis, Software Design, Problem Solving
★ 4.6 (15K) · Beginner · Specialization · 3 - 6 Months

Princeton University
Skills you'll gain: Programming Principles, Computer Programming, Object Oriented Design, Object Oriented Programming (OOP), Performance Tuning, Data Structures, Code Reusability, Other Programming Languages, Java Programming, Java, Program Development, Computational Thinking, Computer Science, Algorithms, Theoretical Computer Science, Animations
★ 4.7 (1.4K) · Beginner · Course · 1 - 3 Months