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

École Polytechnique Fédérale de Lausanne
Skills you'll gain: Scala Programming, Apache Spark, User Interface (UI), Distributed Computing, 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, Data Processing, Geospatial Information and Technology, Performance Tuning, Algorithms
Intermediate · Specialization · 3 - 6 Months

Skills you'll gain: Cybersecurity, Security Controls, Information Systems Security, Security Management, Information Systems Security Assessment Framework (ISSAF), Network Security, Cyber Risk, Security Information and Event Management (SIEM), Information Assurance, Data Ethics, Ethical Standards And Conduct, SQL
Beginner · Course · 1 - 4 Weeks

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
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

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

University of Michigan
Skills you'll gain: Unified Modeling Language, JSON, Object Oriented Programming (OOP), File I/O, Software Design, Debugging, Object Oriented Design, Data Processing, Web Scraping, Unit Testing, Programming Principles, Program Development, Python Programming, Data Import/Export, Restful API, Image Analysis, Data Manipulation, Jupyter, Computer Programming, Data Structures
Beginner · Specialization · 3 - 6 Months

Skills you'll gain: Responsive Web Design, Storyboarding, Wireframing, User Experience Design, UI/UX Research, User Experience, Usability Testing, Information Architecture, Presentations, Web Design, User Research, Design Thinking, Figma (Design Software), Design Reviews, Web Content Accessibility Guidelines, Mobile Development, User Story, Persona (User Experience), Interviewing Skills, Applicant Tracking Systems
Build toward a degree
Beginner · Professional Certificate · 3 - 6 Months
Duke University
Skills you'll gain: File I/O, Java Programming, Software Design, Debugging, Software Engineering, Javascript, Computer Programming, Event-Driven Programming, Encryption, Algorithms, Image Analysis, AI Personalization, Program Development, Data Processing, Statistical Analysis, Data Import/Export, Predictive Modeling, Integrated Development Environments, Data Analysis, Cascading Style Sheets (CSS)
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, Programming Principles, Data Manipulation, Data Structures, Performance Tuning, Data Import/Export
Intermediate · Course · 1 - 4 Weeks

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
Johns Hopkins University
Skills you'll gain: Rmarkdown, Exploratory Data Analysis, Version Control, Statistical Analysis, R Programming, Data Manipulation, Data Cleansing, Data Science, Plot (Graphics), Statistical Programming, Statistical Visualization, Ggplot2, R (Software), Dimensionality Reduction, Data Visualization Software, Data Integration, Knitr, Data Sharing, GitHub, Machine Learning
Beginner · Specialization · 3 - 6 Months