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.

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
Intermediate · Specialization · 3 - 6 Months

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
Intermediate · Course · 1 - 4 Weeks

Skills you'll gain: Mockups, User Experience, User Experience Design, User Interface and User Experience (UI/UX) Design, Web Content Accessibility Guidelines, User Centered Design, Design, Usability, User Interface (UI) Design, UI/UX Research, Collaborative Software, User Research, Design Elements And Principles, AI Workflows, Artificial Intelligence
Mixed · Course · 1 - 3 Months

University of Alberta
Skills you'll gain: Service Oriented Architecture, API Design, Web Services, Simple Object Access Protocol (SOAP), Microservices, Restful API, Software Architecture, Application Programming Interface (API), Web Applications, Software Design, JSON, Web Development, Extensible Markup Language (XML), Android Development
Intermediate · Course · 1 - 4 Weeks

Skills you'll gain: Embedded Software, Embedded Systems, Pseudocode, Microarchitecture, Hardware Architecture, Computer Architecture, Software Systems, Software Design, System Programming, Systems Design, Software Design Patterns, Systems Integration, Programming Principles, Event-Driven Programming, System Configuration, Real Time Data, Peripheral Devices, Memory Management
Beginner · Course · 1 - 4 Weeks

University of Michigan
Skills you'll gain: Object Oriented Programming (OOP), Object Oriented Design, Animations, Software Design, Data Structures, Visualization (Computer Graphics), Interactive Design, Programming Principles, Computer Graphic Techniques, Python Programming, Graphic and Visual Design, Event-Driven Programming, Digital Design, Simulations, Computer Graphics, Design, Graphical Tools, Game Design, Computational Logic, Computational Thinking
Beginner · Specialization · 3 - 6 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
Beginner · Specialization · 3 - 6 Months

University of Minnesota
Skills you'll gain: UI/UX Research, User Research, Design Research, User Interface (UI), User Interface (UI) Design, Usability Testing, Prototyping, User Interface and User Experience (UI/UX) Design, Usability, Interactive Design, User Experience, Human Computer Interaction, Graphic and Visual Design, Persona (User Experience), Ideation, Design, Peer Review, User Experience Design, Design Reviews, Interaction Design
Intermediate · Specialization · 3 - 6 Months
University of California San Diego
Skills you'll gain: Design Research, Interaction Design, User Experience Design, Statistical Analysis, Usability, Experience Design, UI/UX Research, Ideation, User Interface (UI), UI/UX Strategy, Experimentation, Interactive Design, User Interface and User Experience (UI/UX) Design, Human Computer Interaction, A/B Testing, Human Factors, Collaborative Software, Telecommuting, R Programming, Storyboarding
Intermediate · Specialization · 3 - 6 Months

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: Software Architecture, Solution Architecture, Microservices, Software Design, Business Process Modeling, Software Design Patterns, Security Architecture Review, Technology Strategies, Event-Driven Programming, Business Modeling, Serverless Computing, Digital Transformation, Scalability, Distributed Computing, Context Management, Restful API, Innovation
Intermediate · Course · 1 - 3 Months

University of Colorado Boulder
Skills you'll gain: User Research, User Experience Design, User Experience, User Interface and User Experience (UI/UX) Design, Usability, Verification And Validation, UI/UX Research, UI/UX Strategy, Internet Of Things, API Design, User Interface (UI), Embedded Software, Amazon Web Services, Interactive Design, Cloud Computing Architecture, Human Computer Interaction, Embedded Systems, Application Programming Interface (API), Prototyping, Software Development
Build toward a degree
Intermediate · Specialization · 3 - 6 Months