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 Virginia
Skills you'll gain: Usability Testing, Agile Product Development, User Story, Continuous Delivery, Persona Development, Agile Software Development, Sprint Planning, Peer Review, Agile Methodology, Product Testing, Agile Project Management, Team Performance Management, Team Management, Design Thinking, Team Building, Customer Analysis, Analytics, Product Development, Business Analytics, Persona (User Experience)
Beginner · Specialization · 3 - 6 Months

Skills you'll gain: Performance Tuning, Database Design
Beginner · Course · 1 - 4 Weeks
Rutgers the State University of New Jersey
Skills you'll gain: Strategic Sourcing, Lean Six Sigma, Lean Manufacturing, Demand Planning, Procurement, Supplier Relationship Management, Forecasting, Lean Methodologies, Process Improvement, Supplier Management, Operations Management, Purchasing, Production Process, Supply Management, Supply Chain, Warehouse Management, Supply Chain Planning, Inventory and Warehousing, Inventory Management System, Logistics
Beginner · Specialization · 3 - 6 Months

Skills you'll gain: Django (Web Framework), Full-Stack Web Development, Version Control, Restful API, Data Structures, Unix Commands, Bootstrap (Front-End Framework), Git (Version Control System), API Testing, Back-End Web Development, GitHub, Relational Databases, Front-End Web Development, Object Oriented Programming (OOP), Database Management Systems, SQL, Database Design, Python Programming, Computer Programming, Cloud Hosting
Build toward a degree
Beginner · Professional Certificate · 3 - 6 Months
University of California, Santa Cruz
Skills you'll gain: Go (Programming Language), File I/O, Data Structures, Programming Principles, Object Oriented Programming (OOP), Debugging, Computer Programming, Unit Testing, C (Programming Language), Program Development, Integrated Development Environments, Computer Science, Software Testing, Algorithms, Integration Testing, Software Design, System Design and Implementation, Distributed Computing, Software Documentation
Intermediate · Specialization · 3 - 6 Months

Skills you'll gain: Retrieval-Augmented Generation, Model Deployment, LLM Application, LangChain, Large Language Modeling, Microservices, Test Driven Development (TDD), Software Architecture, Scalability, MLOps (Machine Learning Operations), Cloud Deployment, Cloud Computing Architecture, API Design, Site Reliability Engineering, Kubernetes, Prompt Engineering, Containerization, Infrastructure as Code (IaC), Python Programming, Performance Analysis
Intermediate · Specialization · 1 - 3 Months

Meta
Skills you'll gain: Jest (JavaScript Testing Framework), React.js, Web Development Tools, JavaScript Frameworks, Application Programming Interface (API), Unit Testing, UI Components, Front-End Web Development, Software Design Patterns, Javascript, Context Management
Intermediate · Course · 1 - 4 Weeks

Skills you'll gain: 3D Assets, Unity Engine, 3D Modeling, Video Game Development, User Interface (UI) Design, Debugging, Game Design, User Interface and User Experience (UI/UX) Design, Computer Graphic Techniques, Program Development, Computer Graphics, Interaction Design, Integration Testing, Animation and Game Design, Scripting, C# (Programming Language), Technical Design, Graphics Software, Object Oriented Programming (OOP), Data Mapping
Intermediate · Specialization · 3 - 6 Months

Logical Operations
Skills you'll gain: Object Oriented Design, Object Oriented Programming (OOP), Software Design, Application Development, Python Programming, Computer Programming, Programming Principles, Software Development, Scripting, Virtual Machines, Scripting Languages
Mixed · Course · 1 - 4 Weeks

Skills you'll gain: Data Persistence, File I/O, C (Programming Language), Game Design, Programming Principles, Debugging, Data Modeling, Computational Thinking, Data Integrity, Program Development, Application Development, Data Maintenance, Computational Logic, Data Validation, Command-Line Interface, Application Design, Animation and Game Design, User Interface (UI), Algorithms, Data Structures
Beginner · Specialization · 1 - 3 Months

University of California, Irvine
Skills you'll gain: Embedded Systems, Internet Of Things, Embedded Software, Network Protocols, Computer Hardware, Software Systems, Wireless Networks, System Design and Implementation, Network Architecture
Mixed · Course · 1 - 4 Weeks

University of Michigan
Skills you'll gain: Unified Modeling Language, JSON, Object Oriented Programming (OOP), File I/O, Software Design, Debugging, Object Oriented Design, Data Processing, Web Scraping, Unit Testing, Programming Principles, Program Development, Python Programming, Data Import/Export, Restful API, Image Analysis, Data Manipulation, Jupyter, Computer Programming, Data Structures
Beginner · Specialization · 3 - 6 Months