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 Colorado Boulder
Skills you'll gain: Field-Programmable Gate Array (FPGA), Hardware Design, Electronic Hardware, Laboratory Experience, Laboratory Reports, Software Design, Application Specific Integrated Circuits, System Design and Implementation, Embedded Software, Systems Design, Embedded Systems, Electronics Engineering, Electronic Systems, Electrical and Computer Engineering, Eclipse (Software), Laboratory Testing, Test Script Development, Program Development, Microarchitecture, Computer Architecture
Build toward a degree
Intermediate · Specialization · 3 - 6 Months

Epic Games
Skills you'll gain: Unreal Engine, User Interface (UI), User Interface (UI) Design, UI Components, Game Design, Video Game Development, User Interface and User Experience (UI/UX) Design, Software Design, Code Reusability, User Experience, UI/UX Strategy, Prototyping
Beginner · Course · 1 - 4 Weeks

Skills you'll gain: C# (Programming Language), Maintainability, Object Oriented Design, Object Oriented Programming (OOP), .NET Framework, Development Environment, Code Reusability, Microsoft Development Tools, Microsoft Visual Studio, Software Engineering, Software Design, Programming Principles, Software Development Tools, Computer Programming, Computer Programming Tools, Debugging, ASP.NET, Application Deployment, Web Development, Back-End Web Development
Beginner · Course · 1 - 3 Months

Vanderbilt University
Skills you'll gain: Claude Code, Prompt Engineering, Agentic systems, ChatGPT, Anthropic Claude, Retrieval-Augmented Generation, Generative AI Agents, Prompt Patterns, Multimodal Prompts, Generative AI, Agentic Workflows, AI Personalization, Software Development Tools, Artificial Intelligence and Machine Learning (AI/ML), Software Engineering, Software Development, Automation, Software Architecture, Software Testing, Software Design
Beginner · Specialization · 3 - 6 Months

Skills you'll gain: Prompt Engineering, Prompt Patterns, Generative AI, Data Ethics, Generative AI Agents, ChatGPT, Model Deployment, Restful API, Software Design Documents, Software Design, Application Deployment, AI Integrations, LLM Application, AI literacy, Software Architecture, Agentic Workflows, Continuous Integration, Model Evaluation, Artificial Intelligence and Machine Learning (AI/ML), Java Programming
Intermediate · Specialization · 3 - 6 Months

Skills you'll gain: Prompt Engineering, Prompt Patterns, Generative AI, Data Ethics, Generative AI Agents, ChatGPT, Software Design Documents, Software Design, LLM Application, AI literacy, AI Integrations, Software Architecture, Agentic Workflows, Continuous Integration, Model Evaluation, Software Development, Artificial Intelligence and Machine Learning (AI/ML), Application Security, Software Engineering, Augmented and Virtual Reality (AR/VR)
Intermediate · Specialization · 1 - 3 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

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

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

Skills you'll gain: Animation and Game Design, Game Design, Unity Engine, Animations, User Interface (UI), Video Game Development, UI Components, User Interface (UI) Design, Virtual Environment, Visualization (Computer Graphics), Computer Graphic Techniques, Software Design, C# (Programming Language), Scripting, System Implementation, Physics
Intermediate · Specialization · 3 - 6 Months

Skills you'll gain: Systems Architecture, Software Architecture, Information Technology Architecture, Enterprise Modeling, Data Architecture, Service Oriented Architecture, Web Services, Systems Design, System Design and Implementation, Software Design, Systems Analysis, Interoperability, Business Systems, Object Oriented Design, Restful API, Engineering Software, Information Systems, Application Programming Interface (API), API Design, IT Automation
Intermediate · Course · 1 - 3 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
Intermediate · Course · 1 - 4 Weeks