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.

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

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: Distributed Denial-Of-Service (DDoS) Attacks, Intrusion Detection and Prevention, Role-Based Access Control (RBAC), AWS Identity and Access Management (IAM), Amazon Web Services, Amazon Elastic Compute Cloud, Identity and Access Management, Cloud Computing, User Provisioning, Security Controls, Cloud Management, Malware Protection, Cloud Infrastructure, Cloud Security, Load Balancing, Authorization (Computing), Network Security, Hardening, Cryptographic Protocols, Cybersecurity
Beginner · 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

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

University of Colorado System
Skills you'll gain: Unified Modeling Language, Unit Testing, Software Design, Data Flow Diagrams (DFDs), Software Engineering Tools, Software Engineering, Software Development Tools, JUnit, Software Testing, Diagram Design, Design, Data Ethics, Test Automation, Dataflow
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

Skills you'll gain: Software Development Life Cycle, Linux Commands, Software Architecture, Bash (Scripting Language), Restful API, Shell Script, Git (Version Control System), GitHub, Full-Stack Web Development, Software Design, Flask (Web Framework), Version Control, File Management, Unix Shell, Web Development, Linux, Application Deployment, Python Programming, NumPy, Data Analysis
Beginner · 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

Scrimba
Skills you'll gain: Responsive Web Design, User Interface (UI) Design, HTML and CSS, User Interface (UI), User Interface and User Experience (UI/UX) Design, Web Design, Figma (Design Software), Typography, Digital Design, Front-End Web Development, Web Design and Development, Graphic and Visual Design, Design Elements And Principles, Maintainability, Mockups, Web Content Accessibility Guidelines, Cascading Style Sheets (CSS), Web Development, Web Development Tools, Software Engineering
Intermediate · Specialization · 3 - 6 Months

Pontificia Universidad Católica del Perú
Skills you'll gain: User Story, Human Computer Interaction, Software Development Life Cycle, Functional Requirement, Unified Modeling Language, User Experience Design, User Interface (UI), Software Development Methodologies, Requirements Analysis, Prototyping, User Experience, User Interface (UI) Design, User Requirements Documents, System Requirements, Interaction Design, Functional Specification, Requirements Elicitation, Human Factors, Software Development, Process Driven Development
Beginner · Specialization · 3 - 6 Months