Dynamic Programming courses can help you learn algorithm design, problem-solving techniques, and optimization strategies. You can build skills in breaking down complex problems, analyzing recursive relationships, and implementing efficient solutions. Many courses introduce tools like Python and C++ for coding algorithms, along with frameworks that support dynamic programming methods, enabling you to tackle challenges in areas such as AI, game development, and operations research.

University of California San Diego
Skills you'll gain: Unit Testing, Growth Mindedness, Data Structures, Graph Theory, Event-Driven Programming, Social Network Analysis, Interactive Data Visualization, Java, Java Programming, Network Analysis, Object Oriented Programming (OOP), Technical Communication, User Interface (UI), JUnit, Object Oriented Design, Computer Programming, Adaptability, Performance Tuning, Algorithms, Problem Solving
Intermediate · Specialization · 3 - 6 Months

Skills you'll gain: Rust (Programming Language), Data Structures, Package and Software Management, Blockchain, Development Environment, Web Development, Programming Principles, Web Servers, Restful API, System Programming, Maintainability, Algorithms, Integrated Development Environments, Software Testing, Unit Testing, Software Design Patterns, Development Testing, Debugging
Beginner · Specialization · 3 - 6 Months

University of London
Skills you'll gain: C++ (Programming Language), Object Oriented Programming (OOP), Computer Programming, Programming Principles, Interactive Design, Program Development, File I/O, Command-Line Interface, Control Panels, Development Environment, Debugging
Build toward a degree
Intermediate · Course · 1 - 4 Weeks

Skills you'll gain: Java Programming, Java, Integrated Development Environments, Mobile Development, Computer Programming, Programming Principles, Object Oriented Programming (OOP), Debugging, Data Structures
Beginner · Guided Project · Less Than 2 Hours

Skills you'll gain: Unix Shell, Unix Commands, Unix, Shell Script, Bash (Scripting Language), Command-Line Interface, Remote Access Systems, Scripting, Systems Administration, Operating System Administration, Linux Commands, File I/O, IT Automation, Linux, User Accounts, File Systems, System Monitoring, Operating Systems, File Management, Performance Tuning
Beginner · Specialization · 1 - 3 Months

Skills you'll gain: Rust (Programming Language), Development Environment, Programming Principles, Data Structures, Integrated Development Environments, System Programming, Algorithms
Beginner · Course · 1 - 3 Months

Skills you'll gain: Selenium (Software), Java, File Management, Cascading Style Sheets (CSS), Test Automation, Web Scraping, Data Validation, Web Development Tools, Hypertext Markup Language (HTML)
Intermediate · Course · 1 - 3 Months

Skills you'll gain: Spring Framework, Hibernate (Java), Spring Boot, Java, Object-Relational Mapping, Database Management, Apache Maven, Software Design Patterns, SQL, Data Persistence, Functional Design, Dependency Analysis
Intermediate · Course · 1 - 4 Weeks

Duke University
Skills you'll gain: Video Game Development, Animations, Event-Driven Programming, Animation and Game Design, Game Design, Storyboarding, 3D Assets, Programming Principles, Computer Graphics, Computer Programming, Scripting, Debugging
Beginner · Course · 1 - 3 Months

Skills you'll gain: Ruby (Programming Language), Debugging, Scripting Languages, Data Structures, Scripting, Program Development, Object Oriented Programming (OOP)
Intermediate · Course · 1 - 3 Months

Skills you'll gain: PHP (Scripting Language), Web Applications, Server Side, Hypertext Markup Language (HTML), Web Development, Web Servers, Scripting, Scripting Languages, Development Environment, Programming Principles, Data Validation
Mixed · Course · 1 - 4 Weeks

Skills you'll gain: Javascript, JavaScript Frameworks, Node.JS, Event-Driven Programming, Application Programming Interface (API), Debugging
Intermediate · Course · 1 - 4 Weeks