Design Patterns courses can help you learn object-oriented design principles, common design patterns like Singleton and Observer, and best practices for software architecture. You can build skills in code refactoring, improving maintainability, and enhancing collaboration among developers. Many courses introduce tools such as UML for visualizing design structures and integrated development environments (IDEs) that facilitate pattern implementation, allowing you to apply these concepts in real coding projects.

California Institute of the Arts
Skills you'll gain: Information Architecture, Wireframing, User Interface and User Experience (UI/UX) Design, Persona (User Experience), Mockups, User Experience Design, Responsive Web Design, UI/UX Strategy, Web Design, Adobe XD, User Interface (UI) Design, User Experience, User Centered Design, Interaction Design, Prototyping, Graphic and Visual Design, Web Language, Design, Design Elements And Principles, User Research
Beginner · Specialization · 3 - 6 Months

LearnQuest
Skills you'll gain: Spring Framework, Microservices, JUnit, Model View Controller, Restful API, Spring Boot, Software Architecture, API Gateway, Web Services, Object-Relational Mapping, Transaction Processing, Data Persistence, Service Oriented Architecture, Cloud Computing Architecture, JSON, YAML, Load Balancing, Unit Testing, Java Programming, Enterprise Application Management
Beginner · Specialization · 1 - 3 Months

DeepLearning.AI
Skills you'll gain: AI Orchestration, AI Workflows, Agentic Workflows, Generative AI Agents, Agentic systems, LLM Application, Tool Calling
Beginner · Project · Less Than 2 Hours

University of Alberta
Skills you'll gain: Object Oriented Design, Unified Modeling Language, Software Design, Software Design Patterns, Object Oriented Programming (OOP), Java, Maintainability, Application Design
Intermediate · Course · 1 - 4 Weeks

Scrimba
Skills you'll gain: Responsive Web Design, User Interface (UI) Design, User Interface (UI), HTML and CSS, Web Design, Figma (Design Software), Typography, Front-End Web Development, Web Design and Development, Maintainability, Mockups, Web Content Accessibility Guidelines, UI Components, Cascading Style Sheets (CSS), Layout Design, Web Development, Usability, Prototyping, Web Development Tools, Software Engineering
Intermediate · Specialization · 3 - 6 Months

University of Colorado Boulder
Skills you'll gain: Object Oriented Design, Object Oriented Programming (OOP), Unified Modeling Language, JUnit, Software Testing, Software Engineering, Java, Java Programming, Computer Programming, Unit Testing, Program Development, Software Design, Test Driven Development (TDD), Conceptual Design
Build toward a degree
Intermediate · Course · 1 - 3 Months

Skills you'll gain: Microservices, API Gateway, Scalability, Systems Architecture, Software Architecture, Data Management, Distributed Computing, Databases, API Design, Restful API, Software Design Patterns, NoSQL, GraphQL, Event-Driven Programming
Intermediate · Course · 1 - 3 Months

University of Colorado Boulder
Skills you'll gain: Performance Testing, Scalability, Data Architecture, Software Architecture, Distributed Computing, Predictive Modeling, Performance Tuning, Microservices, Big Data, Software Engineering, Database Systems, Data Store, Model Evaluation
Build toward a degree
Advanced · Course · 1 - 4 Weeks

Birla Institute of Technology & Science, Pilani
Skills you'll gain: Computer Science, Machine Learning Algorithms, Solution Design, Problem Solving, Mathematical Theory & Analysis
Beginner · Course · 1 - 3 Months

Georgia Institute of Technology
Skills you'll gain: User Experience Design, Prototyping, User Centered Design, Usability, Requirements Analysis, UI/UX Research, Interaction Design, User Interface (UI) Design, Usability Testing, User Research
Beginner · Course · 1 - 3 Months

Skills you'll gain: Video Production, Instructional Design, Digital pedagogy, Virtual Environment, User Interface and User Experience (UI/UX) Design, Teaching, Education Software and Technology, User Centered Design, Student Engagement, Learning Styles, Technical Writing, Web Content Accessibility Guidelines, UI/UX Research, Online Advertising, Survey Creation
Beginner · Course · 1 - 3 Months

Skills you'll gain: Software Design Patterns, Software Design, C++ (Programming Language), Software Architecture, Programming Principles, Object Oriented Programming (OOP), Maintainability, Prototyping, Database Application
Intermediate · Course · 1 - 3 Months