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.

Skills you'll gain: Software Design Patterns, System Design and Implementation, C and C++, Systems Design, Design Strategies
Intermediate · Course · 3 - 6 Months

University of Colorado Boulder
Skills you'll gain: Object Oriented Design, JUnit, Object Oriented Programming (OOP), Unified Modeling Language, Software Design Patterns, Software Testing, Java, Software Engineering, Java Programming, Computer Programming, User Interface and User Experience (UI/UX) Design, Unit Testing, Software Design, Software Architecture, User Interface (UI) Design, API Design, Model View Controller, Software Development, Test Driven Development (TDD), Databases
★ 4.3 (21) · Intermediate · Specialization · 3 - 6 Months

Skills you'll gain: Object Oriented Design, Object Oriented Programming (OOP), Software Design Patterns, Game Design, Maintainability, Code Reusability, Software Design, Software Architecture, Video Game Development, Programming Principles, Animation and Game Design, Event-Driven Programming, Game Theory, Data Persistence, Artificial Intelligence, Animations, Algorithms
Intermediate · Course · 3 - 6 Months

LearnQuest
Skills you'll gain: Spring Framework, Microservices, JUnit, Model View Controller, Restful API, Application Frameworks, Spring Boot, Software Architecture, API Gateway, Web Services, Cloud-Native Computing, Object-Relational Mapping, Transaction Processing, Data Persistence, Frontend Integration, Service Oriented Architecture, JSON, Database Management, Unit Testing, Java Programming
★ 3.9 (704) · Beginner · Specialization · 1 - 3 Months

Skills you'll gain: Prompt Engineering, Retrieval-Augmented Generation, LLM Application, Large Language Modeling, Model Evaluation, Embeddings, Context Management, Vector Databases, Artificial Intelligence, Scalability, Performance Metric, Machine Learning, Application Programming Interface (API), Continuous Improvement Process
Intermediate · Course · 1 - 4 Weeks

Pearson
Skills you'll gain: Systems Architecture, Software Architecture, Systems Design, Software Design, System Design and Implementation, Functional Design, Systems Development, Service Oriented Architecture, Verification And Validation, Maintainability, Systems Analysis
★ 4 (6) · Intermediate · Course · 1 - 4 Weeks

Skills you'll gain: Apple iOS, iOS Development, Swift Programming, Test Driven Development (TDD), Mobile Development, Cross Platform Development, Unit Testing, Application Design, Development Testing, Knowledge of Apple Software, Application Development, User Interface (UI), UI Components, User Interface (UI) Design, Software Design Patterns, Software Architecture, Code Reusability, Maintainability
Advanced · Course · 1 - 3 Months

Skills you'll gain: Model Deployment, AI Integrations, Enterprise Application Management, Generative AI Agents, Prompt Engineering, Prompt Patterns, LLM Application, Application Deployment, Role-Based Access Control (RBAC), Prompt Engineering Tools, Health Insurance Portability And Accountability Act (HIPAA) Compliance, User Interface (UI), Package and Software Management, Agentic systems, API Design, UI Components, Restful API, Authentications, Data Persistence, Release Management
Intermediate · Course · 1 - 4 Weeks

University of Alberta
Skills you'll gain: Software Architecture, Unified Modeling Language, Systems Architecture, Software Design, Software Design Documents, Software Visualization, Product Family Engineering, Software Development, Software Documentation, Diagram Design, Software Technical Review, Application Deployment, Data Storage
★ 4.5 (942) · Intermediate · Course · 1 - 4 Weeks

Skills you'll gain: User Experience, UI/UX Research, User Experience Design, User Research, Design Thinking, Usability, User Centered Design, Prototyping, Sprint Retrospectives, Wireframing, Ideation, Sprint Planning
★ 4.8 (76K) · Beginner · Course · 1 - 4 Weeks

Skills you'll gain: Restful API, Spring Framework, Microservices, Cloud Deployment, API Design, Spring Boot, OAuth, Java Programming, System Design and Implementation, Java, Systems Design, Systems Architecture, Cloud Development, Software Design, Web Design and Development, Sprint Planning, NoSQL, SQL, Databases, Product Management
Beginner · Course · 1 - 3 Months

Skills you'll gain: User Interface (UI), User Interface (UI) Design, Responsive Web Design, User Interface and User Experience (UI/UX) Design, User Experience Design, Digital Design, Web Design, Graphic and Visual Design, User Experience, Motion Graphics, Adobe XD, Interactive Design, No-Code Development, Graphic Design, Color Matching, Layout Design, Visual Design, Graphic and Visual Design Software, Design, Graphics Software
★ 5 (6) · Beginner · Specialization · 3 - 6 Months