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: User Story, Agile Software Development, Software Design Patterns, Design Thinking, Software Development Methodologies, Software Design, Agile Methodology, Agile Project Management, Process Mapping, Software Engineering, Kanban Principles, Kaizen Methodology, Software Development Life Cycle, Software Quality Assurance, Agile Product Development, Application Security, Security Architecture Review, Scrum (Software Development), Object Oriented Design, Software Architecture
★ 4.7 (9.8K) · Intermediate · Specialization · 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
★ 4 (6) · Intermediate · Course · 1 - 4 Weeks

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

University of Colorado Boulder
Skills you'll gain: Object Oriented Design, JUnit, Object Oriented Programming (OOP), Unified Modeling Language, Software Design Patterns, Software Testing, Java, Software Engineering, Java Programming, Computer Programming, User Interface and User Experience (UI/UX) Design, Unit Testing, Software Design, Software Architecture, User Interface (UI) Design, API Design, Model View Controller, Software Development, Test Driven Development (TDD), Databases
★ 4.3 (21) · Intermediate · Specialization · 3 - 6 Months

University of Alberta
Skills you'll gain: Agile Software Development, Project Risk Management, Requirements Analysis, Agile Methodology, Agile Project Management, Kanban Principles, Risk Management, Requirements Elicitation, Sprint Retrospectives, Functional Requirement, Sprint Planning, Software Development Methodologies, Agile Product Development, Software Development, Risk Analysis, Scrum (Software Development), Software Technical Review, Risk Management Framework, Product Management, Project Management
★ 4.7 (12K) · Beginner · 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: 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
★ 4.5 (658) · 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
★ 4.5 (942) · Intermediate · Course · 1 - 4 Weeks

Board Infinity
Skills you'll gain: Test Case, Test Script Development, Test Planning, Test Automation, Test Engineering, Continuous Integration, Test Tools, CI/CD, Software Quality Assurance, Continuous Delivery, Quality Assurance, Software Quality (SQA/SQC), Software Engineering Tools
Beginner · Course · 1 - 4 Weeks

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
★ 4.5 (148) · Intermediate · Specialization · 3 - 6 Months

University of Alberta
Skills you'll gain: Object Oriented Design, Unified Modeling Language, Software Design, Object Oriented Programming (OOP), Java, Java Programming, Maintainability, Code Reusability, Software Design Documents, Application Design, Conceptual Design, Diagram Design, Design Elements And Principles
★ 4.7 (2.4K) · Intermediate · Course · 1 - 4 Weeks

University of Colorado Boulder
Skills you'll gain: Embedded Software, Embedded Systems, Debugging, Data Structures, System Programming, Microarchitecture, C (Programming Language), Memory Management, Hardware Architecture, Computer Architecture, Software Design, Maintainability, System Configuration, Code Reusability, Software Architecture, Peripheral Devices
★ 4.5 (531) · Intermediate · Course · 1 - 4 Weeks