Software design courses can help you learn programming principles, design patterns, user interface design, and system architecture. You can build skills in code refactoring, version control, and creating scalable applications. Many courses introduce tools like Git for version control, Figma for UI/UX design, and various integrated development environments (IDEs) to streamline the coding process. By engaging with these topics and tools, you can enhance your ability to create efficient, user-friendly software solutions.

The Hong Kong University of Science and Technology
Skills you'll gain: Software Design Patterns, Software Architecture, Software Development Life Cycle, Software Quality Assurance, Software Quality (SQA/SQC), Software Design, Software Engineering, Quality Assurance, Systems Analysis, Object Oriented Design, Systems Design, Project Management, Project Planning, Systems Architecture, Unified Modeling Language, Diagram Design
Intermediate · Course · 1 - 3 Months

Epic Games
Skills you'll gain: Game Design, Unreal Engine, Video Game Development, Software Design Documents, Ideation, 3D Modeling, Animation and Game Design, 3D Assets, Visualization (Computer Graphics), User Experience Design, Usability, User Interface (UI), User Interface and User Experience (UI/UX) Design, User Experience, User Interface (UI) Design, Interactive Design, Virtual Environment, Software Documentation, Version Control, Prototyping
Beginner · Professional Certificate · 3 - 6 Months

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

University of Colorado System
Skills you'll gain: Database Design, Software Design, User Experience Design, Database Theory, Usability, UI/UX Research, Usability Testing, User Interface and User Experience (UI/UX) Design, Relational Databases, Software Visualization, Software Architecture, Software Design Patterns, User Interface (UI) Design, Application Security, Design Strategies, Security Software, Servers, Operating Systems
Intermediate · Course · 1 - 3 Months

University of Colorado System
Skills you'll gain: Unified Modeling Language, Unit Testing, Software Design, Data Flow Diagrams (DFDs), Software Engineering Tools, Software Development Tools, JUnit, Development Testing, Data Ethics, Test Automation, Software Development Methodologies, Dataflow
Intermediate · Course · 1 - 3 Months

Skillshare
Skills you'll gain: Unreal Engine, Animations, 3D Assets, Animation and Game Design, Virtual Environment, Game Design, 3D Modeling, Video Game Development, Computer Graphics, Timelines, Visual Storytelling, Prototyping, Design Strategies, Data Import/Export, Layout Design, User Interface (UI), Interactive Design, Application Deployment, Creative Design, Software Installation
Beginner · Specialization · 3 - 6 Months

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 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 Acceptance Testing (UAT), User Experience Design, User Experience, Human Computer Interaction, User Centered Design, Graphic and Visual Design, Persona (User Experience), Ideation, Web Content Accessibility Guidelines, UI/UX Strategy
Intermediate · Specialization · 3 - 6 Months

University of Colorado System
Skills you'll gain: Application Security, Vulnerability Assessments, Software Design, Threat Modeling, Vulnerability Management, Security Engineering, Secure Coding, Software Design Patterns, Software Architecture, Software Visualization, Exploitation techniques, Cryptography, Cryptographic Protocols, Blockchain, Public Key Cryptography Standards (PKCS), Data Validation
Intermediate · Course · 1 - 3 Months

Skills you'll gain: User Centered Design, User Experience Design, Responsive Web Design, User Interface (UI) Design, Web Design and Development, Prototyping, Front-End Web Development, Graphic and Visual Design, User Interface and User Experience (UI/UX) Design, Figma (Design Software), Design Elements And Principles, Web Design, Wireframing, Typography, Application Design, Layout Design, UI Components, Web Applications, Mobile Development, Design Thinking
Beginner · Course · 1 - 4 Weeks

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

Skills you'll gain: Real-Time Operating Systems, Embedded Software, Software Architecture, Code Reusability, Embedded Systems, Memory Management, Systems Architecture, Software Design, Software Design Patterns, Maintainability, Performance Tuning, Scalability, Data Sharing, OS Process Management
Intermediate · Course · 1 - 4 Weeks