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 Colorado Boulder
Skills you'll gain: Software Architecture, Cloud Development
Intermediate · Course · 1 - 3 Months

Skills you'll gain: Application Development, UI Components, Program Development, Maintainability
Beginner · Course · 1 - 4 Weeks

University of Michigan
Skills you'll gain: Object Oriented Programming (OOP), JSON, Object Oriented Design, Unit Testing, Python Programming, Software Testing, Data Structures
Intermediate · Course · 1 - 4 Weeks

Skills you'll gain: Sampling (Statistics), SAS (Software), Data Integration, Statistical Programming, Statistical Methods, Data Manipulation, Data Processing, Data Management, SQL, Data Transformation, Data Governance, Transaction Processing, Version Control, Data Structures, File Management
Intermediate · Course · 1 - 3 Months
University of Michigan
Skills you'll gain: Matplotlib, Data Visualization, Data Visualization Software, Interactive Data Visualization, Scientific Visualization, Visualization (Computer Graphics), Statistical Visualization, Data Presentation, Graphing, Scatter Plots, Data Manipulation, Histogram, NumPy, Pandas (Python Package), Python Programming
Intermediate · Course · 1 - 4 Weeks

Skills you'll gain: Computer Graphics, Visualization (Computer Graphics), C# (Programming Language), .NET Framework, Graphical Tools, Animations, Animation and Game Design, Image Analysis, User Interface (UI), User Interface (UI) Design, Application Development
Intermediate · Course · 1 - 4 Weeks

Princeton University
Skills you'll gain: Graph Theory, Data Structures, Algorithms, Theoretical Computer Science, Operations Research, Computational Thinking, Computer Programming, Network Routing, Java Programming, Linear Algebra
Intermediate · Course · 3 - 6 Months

Skills you'll gain: Plotly, Predictive Modeling, Exploratory Data Analysis, Data Storytelling, Statistical Machine Learning, Data Science, Business Analytics, Data-Driven Decision-Making, Pandas (Python Package), Data Analysis, Web Scraping, Data Wrangling, Model Evaluation, Python Programming, SQL, GitHub
Intermediate · Course · 1 - 3 Months

Skills you'll gain: Object Oriented Programming (OOP), C++ (Programming Language), Object Oriented Design, Application Design, Solution Design, Software Visualization, Program Development, Verification And Validation
Intermediate · Course · 1 - 4 Weeks
LearnQuest
Skills you'll gain: Java Programming, Java, File I/O, Eclipse (Software), Object Oriented Programming (OOP), Object Oriented Design, Integrated Development Environments, Development Environment, Software Design, Computer Programming, Application Frameworks, Programming Principles, Virtual Machines, Web Development, Debugging, Data Persistence, Package and Software Management, Data Structures
Intermediate · Specialization · 3 - 6 Months

Skills you'll gain: Object Oriented Programming (OOP), Data Visualization, Seaborn, Flask (Web Framework), Programming Principles, Web Applications, Statistical Methods, Data Analysis Software, Pandas (Python Package), Probability & Statistics, Data Manipulation, Data Structures, UI Components
Intermediate · Course · 1 - 3 Months

University of Minnesota
Skills you'll gain: User Story, Agile Software Development, Agile Methodology, Agile Project Management, Scrum (Software Development), Sprint Planning, Software Development Methodologies, Sprint Retrospectives, Backlogs, Continuous Integration, Test Driven Development (TDD)
Intermediate · Course · 1 - 4 Weeks