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 Washington
Skills you'll gain: Feature Engineering, Unsupervised Learning, Data Ethics, Statistical Visualization, Data Storytelling, Big Data, Relational Databases, Supervised Learning, Database Systems, Dataflow, Data Visualization Software, Databases, Statistical Machine Learning, Model Evaluation, Predictive Analytics, R Programming, Data Analysis, SQL, Predictive Modeling, Python Programming
Intermediate · Specialization · 3 - 6 Months

Multiple educators
Skills you'll gain: Policy Analysis, Innovation, Systems Thinking, Storytelling, Visionary, Sociology, Social Sciences, Creative Thinking, Economics, Policy, and Social Studies, Social Impact, Sustainable Development, Sustainable Systems, Social Justice, Cultural Diversity, Critical Thinking, Case Studies, Environmental Science, Spatial Analysis, Human Centered Design, Public Policies
Intermediate · Specialization · 3 - 6 Months

Skills you'll gain: Database Design, Relational Databases, SQL, Databases, R Programming, Database Management, Data Science, Data Modeling, Query Languages, Data Access, Data Manipulation, Data Analysis
Beginner · Course · 1 - 3 Months

Skills you'll gain: Product Lifecycle Management, Product Roadmaps, Product Management, Product Planning, New Product Development, Product Strategy, Project Management Life Cycle, Product Development, Project Planning, Agile Product Development, Business Planning, Team Building, Competitive Analysis, Market Research, Market Analysis, Marketing Strategies, Risk Management, Financial Analysis
Beginner · Course · 1 - 3 Months

University of Michigan
Skills you'll gain: C (Programming Language), C++ (Programming Language), Object Oriented Programming (OOP), Data Structures, Programming Principles, Algorithms, Computer Programming, Software Design, Application Security, Other Programming Languages, Python Programming, Java Programming, System Programming, Computer Architecture, Performance Tuning, Unix, Computer Science, Debugging
Intermediate · Specialization · 3 - 6 Months

MathWorks
Skills you'll gain: Model Based Systems Engineering, Systems Engineering, Systems Architecture, Systems Design, Functional Design, Requirements Analysis, Requirements Elicitation, Verification And Validation
Beginner · Course · 1 - 4 Weeks

École Polytechnique Fédérale de Lausanne
Skills you'll gain: Scala Programming, Data Structures, Distributed Computing, Algorithms, Functional Design, Scalability, Java Programming, Other Programming Languages, Performance Tuning
Intermediate · Course · 1 - 4 Weeks

Duke University
Skills you'll gain: Matplotlib, Pandas (Python Package), NumPy, Data Visualization, Data Cleansing, Data Structures, Data Visualization Software, Predictive Analytics, Debugging, Object Oriented Programming (OOP), Data Manipulation, Regression Analysis, Python Programming, Data Science, Algorithms, Simulations, Data Preprocessing, Exploratory Data Analysis, Predictive Modeling, Data Analysis
Beginner · Specialization · 3 - 6 Months
University of Michigan
Skills you'll gain: Django (Web Framework)
Intermediate · Course · 1 - 3 Months

Skills you'll gain: Data Visualization, Data Visualization Software, Spreadsheet Software, Correlation Analysis, Google Sheets, Pivot Tables And Charts, Dashboard, Data Analysis, Data Storytelling, Tableau Software, Descriptive Statistics, Data Cleansing, Exploratory Data Analysis, Data Manipulation, Statistics, SQL
Beginner · Course · 1 - 3 Months

University of Colorado Boulder
Skills you'll gain: Theoretical Computer Science, Algorithms, Computational Thinking, Pseudocode, Data Structures, Design Strategies, Programming Principles, Computer Science, Advanced Mathematics, Python Programming, Analysis
Build toward a degree
Advanced · Course · 1 - 4 Weeks

University of Colorado System
Skills you'll gain: Requirements Elicitation, Software Design Documents, Requirements Analysis, Security Requirements Analysis, Mockups, Interviewing Skills, User Requirements Documents, Data Flow Diagrams (DFDs), Storyboarding, Requirements Management, Functional Requirement, Goal Setting, Software Development Methodologies, Software Documentation, Diagram Design, Agile Methodology, Business Requirements, Unified Modeling Language, Risk Management Framework, System Requirements
Beginner · Specialization · 3 - 6 Months