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.

Yale University
Skills you'll gain: Clinical Trials, Software Development Life Cycle, Medical Devices, Systems Development, Usability, Medical Privacy, Regulatory Affairs, Verification And Validation, Human Factors, Regulatory Requirements, Quality Management Systems, Risk Management, Medical Management, User Interface (UI), Software Design, Healthcare Project Management, Software Testing, Entrepreneurship, Artificial Intelligence and Machine Learning (AI/ML), User Research
Intermediate · Course · 3 - 6 Months

University of Colorado System
Skills you'll gain: Application Security, Vulnerability Assessments, Software Design, Threat Modeling, Open Web Application Security Project (OWASP), Secure Coding, Software Design Patterns, Software Architecture, Cryptography, Blockchain, Public Key Cryptography Standards (PKCS)
Intermediate · Course · 1 - 3 Months
University of Alberta
Skills you'll gain: Agile Software Development, Requirements Management, Software Development, Product Management, Process Development, Application Lifecycle Management, Software Engineering, Project Planning, Project Management, Customer Engagement
Mixed · Course · 1 - 4 Weeks

Skills you'll gain: Jest (JavaScript Testing Framework), CI/CD, Model View Controller, User Acceptance Testing (UAT), Continuous Integration, Cucumber (Software), Postman API Platform, Ansible, Software Testing, OAuth, Web Development Tools, Behavior-Driven Development, Application Performance Management, Prometheus (Software), Authentications, Test Driven Development (TDD), Package and Software Management, Cloud API, Javascript, Software Engineering
Beginner · Specialization · 3 - 6 Months

University of Alberta
Skills you'll gain: Software Architecture, Unified Modeling Language, Software Design, Product Family Engineering, Software Systems, Software Development, Software Documentation, Software Design Patterns, Middleware, Maintainability, Application Deployment, Scalability, Databases
Intermediate · Course · 1 - 4 Weeks

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

The Hong Kong University of Science and Technology
Skills you'll gain: White-Box Testing, Acceptance Testing, Software Development Methodologies, Configuration Management, Debugging, Software Development Life Cycle, Software Testing, Software Development, Software Engineering, Unified Modeling Language, System Testing, Integration Testing, User Acceptance Testing (UAT), Unit Testing, Secure Coding, Test Case, Requirements Analysis, Waterfall Methodology, Agile Methodology, Project Management
Intermediate · Course · 1 - 3 Months
University of Alberta
Skills you'll gain: Agile Software Development, Agile Methodology, Requirements Analysis, Software Development, Requirements Management, Product Management, Software Engineering, Project Planning, Process Development, Project Management
Mixed · Course · 1 - 4 Weeks

University of Colorado Boulder
Skills you'll gain: Object Oriented Design, Object Oriented Programming (OOP), Unified Modeling Language, JUnit, Software Testing, Software Engineering, Java, Java Programming, Computer Programming, Unit Testing, Program Development, Software Design, Test Driven Development (TDD), Conceptual Design
Build toward a degree
Intermediate · Course · 1 - 3 Months

Michigan State University
Skills you'll gain: Unity Engine, Game Design, Video Game Development, User Interface (UI), User Experience, Software Design, Storytelling, Application Design, C# (Programming Language), Animations
Intermediate · Course · 1 - 4 Weeks

Indian Institute of Technology Guwahati
Skills you'll gain: SolidWorks (CAD), Computer-Aided Design, Computer Graphics, 3D Modeling, Mechanical Design, Engineering Drawings, Visualization (Computer Graphics), Prototyping, Animations
Intermediate · Course · 1 - 3 Months

University of Colorado Boulder
Skills you'll gain: Design Elements And Principles, Graphic Design, Design, Storytelling, Layout Design, Typography, Adobe InDesign, Design Research, Information Architecture, Color Theory, Adobe Photoshop
Beginner · Course · 1 - 4 Weeks