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.

Skills you'll gain: Software Development Life Cycle, Linux Commands, Software Architecture, Bash (Scripting Language), Restful API, Shell Script, Git (Version Control System), GitHub, Flask (Web Framework), Software Design, Version Control, File Management, Application Deployment, Linux, Software Development Methodologies, Software Design Patterns, Data Import/Export, Programming Principles, Web Scraping, Python Programming
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, Cloud Computing, Malware Protection, Threat Modeling, Cloud Security, Load Balancing, Security Engineering, User Accounts, Authorization (Computing), Identity and Access Management, Network Security, Information Systems Security, Cybersecurity, Encryption, Geographic Information Systems
Beginner · Specialization · 3 - 6 Months

Skillshare
Skills you'll gain: Unreal Engine, Animations, Animation and Game Design, Virtual Environment, Game Design, 3D Modeling, 3D Assets, Motion Graphics, Video Game Development, Timelines, Prototyping, Data Import/Export, Creativity, User Interface (UI), Interactive Design
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, Software Engineering, Java, Java Programming, Computer Programming, Application Design, User Interface and User Experience (UI/UX) Design, Unit Testing, Software Design, Software Architecture, API Design, Model View Controller, Program Development, Software Development, Databases
Intermediate · Specialization · 3 - 6 Months

Pearson
Skills you'll gain: Systems Architecture, Software Architecture, Systems Design, Software Design, Solution Architecture, Service Oriented Architecture, Verification And Validation, Maintainability, Systems Analysis, Enterprise Architecture
Intermediate · Course · 1 - 4 Weeks

Microsoft
Skills you'll gain: Prototyping, Usability Testing, Wireframing, Interaction Design, User Experience Design, Figma (Design Software), Usability, User Interface (UI) Design, Mockups, UI/UX Research, Design Thinking, User Research, Style Guides
Mixed · Course · 1 - 4 Weeks

Birla Institute of Technology & Science, Pilani
Skills you'll gain: Object Oriented Design, Software Architecture, Software Design, Software Design Patterns, Software Development Life Cycle, Software Development, Software Engineering, Maintainability, Systems Architecture, Service Oriented Architecture, Technical Design, Web Services, Model View Controller, Event-Driven Programming
Intermediate · Course · 1 - 3 Months

The Hong Kong University of Science and Technology
Skills you'll gain: Requirements Analysis, Unified Modeling Language, Object Oriented Design, Functional Requirement, Data Modeling, Object Oriented Programming (OOP), Systems Development Life Cycle, User Requirements Documents, System Requirements, Functional Specification, Diagram Design, Software Development, Software Engineering, Software Systems, Model Evaluation, Project Planning, Project Management
Intermediate · Course · 1 - 3 Months

Skills you'll gain: Real-Time Operating Systems, Embedded Software, Software Architecture, Embedded Systems, Systems Architecture, Software Systems, Software Design, Application Design, Software Design Patterns, Maintainability, Performance Tuning, Safety Assurance, Interoperability, Real Time Data, Secure Coding, Scalability, Design Strategies
Intermediate · 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, Usability Testing, Internet Of Things, Design Research, API Design, Amazon Web Services, Embedded Software, Cloud Computing Architecture, Human Computer Interaction, Embedded Systems, Application Programming Interface (API), Prototyping, Network Protocols, User Interface (UI) Design, Software Development
Build toward a degree
Intermediate · Specialization · 3 - 6 Months

Microsoft
Skills you'll gain: Storyboarding, User Research, Information Architecture, User Experience Design, Persona (User Experience), Design Research, Design Thinking, User Centered Design, Innovation, Creativity
Mixed · Course · 1 - 3 Months
University of Alberta
Skills you'll gain: Requirements Analysis, Requirements Elicitation, Requirements Management, Functional Requirement, Business Requirements, Product Requirements, Backlogs, User Requirements Documents, Scope Management, Change Control, User Story, System Requirements, Client Services, Acceptance Testing, Agile Software Development, Prioritization
Mixed · Course · 1 - 4 Weeks