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: User Research, Figma (Design Software), User Experience Design, Prototyping, Wireframing, Usability, User Centered Design, Human Centered Design, Conceptual Design, Collaborative Software, User Flows, Persona Development
Intermediate · Course · 1 - 4 Weeks

Skills you'll gain: File I/O, Software Design Patterns, Software Documentation, Testability, Development Testing, Package and Software Management
Advanced · Course · 3 - 6 Months

Skills you'll gain: Scalability, Software Architecture, Systems Architecture, Microservices, Software Design, Application Design, Solution Architecture, Software Design Patterns, Systems Design, Service Oriented Architecture, Enterprise Architecture, Object Oriented Design, Maintainability, Engineering Software, Functional Requirement, Programming Principles
Intermediate · Course · 1 - 3 Months

Skills you'll gain: User Experience Design, Usability, User Experience, User Interface and User Experience (UI/UX) Design, Threat Modeling, UI/UX Strategy, Interaction Design, Application Security, Authentications, Human Centered Design, Security Strategy, Usability Testing, Authorization (Computing), Security Controls, Multi-Factor Authentication, Security Awareness, Computer Security Awareness Training, Cybersecurity, Safety Standards, Information Privacy
Intermediate · Course · 1 - 3 Months

Skills you'll gain: Microsoft PowerPoint, Data Visualization, Sales Presentations, Public Speaking, Layout Design
Intermediate · Course · 3 - 6 Months

DeepLearning.AI
Skills you'll gain: Database Design, Software Design Patterns, OpenAI API, Application Design, Database Management, AI Enablement, Software Architecture, System Design and Implementation, Software Development, Query Languages, Secure Coding, Application Programming Interface (API), Performance Tuning
Beginner · Course · 1 - 4 Weeks
University of Colorado Boulder
Skills you'll gain: Web Content Accessibility Guidelines, Education Software and Technology, Peer Review, Design Reviews, Interactive Design, User Interface (UI), Interaction Design, Usability, Software Design Patterns, Technical Design, Experience Design, Usability Testing, Technical Documentation, Design Strategies, Technical Writing, Simulations
Beginner · Course · 1 - 3 Months

Skills you'll gain: Jenkins, Selenium (Software), Apache Maven, CI/CD, Object Oriented Programming (OOP), JUnit, Java, Software Design Patterns, Test Automation, Software Testing, Maintainability, Test Case, Browser Compatibility, Software Design, Test Execution Engine
Intermediate · Course · 1 - 3 Months

University of Colorado System
Skills you'll gain: Database Design, Software Design, Application Security, Vulnerability Assessments, Unified Modeling Language, Unit Testing, Threat Modeling, Usability Testing, User Interface and User Experience (UI/UX) Design, Data Flow Diagrams (DFDs), Open Web Application Security Project (OWASP), Software Architecture, Secure Coding, Object Oriented Design, Software Design Patterns, Database Management, Security Software, Systems Design, Software Development Life Cycle, Technical Design
Beginner · Specialization · 3 - 6 Months

Skills you'll gain: Application Deployment, Cloud Infrastructure, CI/CD, Cloud Security, Service Level Agreement, Microservices, Google Cloud Platform, Network Architecture, Site Reliability Engineering, Cloud Computing Architecture, Kubernetes, Restful API, Cloud Storage, Cloud Computing, Key Performance Indicators (KPIs), DevOps, Virtual Networking, System Design and Implementation, Load Balancing, Disaster Recovery
Advanced · Course · 1 - 3 Months

Skills you'll gain: Version Control, Debugging, Software Design Patterns, Object Oriented Design, Object Oriented Programming (OOP), Software Development, Git (Version Control System), Programming Principles, Software Design, Computer Programming, Software Engineering, Integrated Development Environments, Command-Line Interface
Beginner · Course · 1 - 4 Weeks

Skills you'll gain: Cucumber (Software), Selenium (Software), Apache Maven, Object Oriented Programming (OOP), Behavior-Driven Development, Jenkins, Test Tools, Test Automation, Java Programming, CI/CD, Application Frameworks, Test Script Development, Software Design Patterns
Intermediate · Course · 1 - 3 Months