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.

Board Infinity
Skills you'll gain: Test Automation, Performance Testing, Software Quality Assurance, Security Testing, Regression Testing, User Acceptance Testing (UAT), Maintainability, Development Testing, Continuous Delivery, Code Review, Scalability, Automation, DevOps, Software Design, Technical Communication, Test Execution Engine, Application Programming Interface (API), Integration Testing, Waterfall Methodology, Agile Methodology
Beginner · Specialization · 3 - 6 Months

Duke University
Skills you'll gain: Debugging, Programming Principles, Maintainability, Software Testing, Program Development, C (Programming Language), Algorithms, Pseudocode, Simulations, System Programming, Computer Programming, Data Structures, Software Development, Software Engineering, Command-Line Interface, Operating Systems, Development Environment, User Interface (UI), Problem Solving, Software Design
Beginner · Specialization · 3 - 6 Months

Skills you'll gain: Software Development Life Cycle, User Story, Software Architecture, Agile Software Development, Sprint Retrospectives, Agile Methodology, DevOps, Kanban Principles, Software Design, Scrum (Software Development), Information Technology, Computer Hardware, Sprint Planning, Software Development Methodologies, Backlogs, Agile Project Management, Team Building, Risk Management, Leadership, Communication
Beginner · Professional Certificate · 3 - 6 Months

University of Colorado System
Skills you'll gain: Unified Modeling Language, Unit Testing, Software Design, Technical Design, Object Oriented Design, Software Engineering, Software Development Tools, JUnit, Systems Design, Data Ethics, Test Automation, Software Architecture, Software Development Methodologies, Dataflow
Intermediate · Course · 1 - 3 Months

University of Colorado System
Skills you'll gain: Software Design, Software Development Life Cycle, Application Security, Technical Design, Software Architecture, Software Development Methodologies, Conceptual Design, Requirements Analysis
Mixed · Course · 1 - 3 Months

Skills you'll gain: Animation and Game Design, Unity Engine, Game Design, 3D Assets, User Interface (UI), Computer Graphics, 3D Modeling, Virtual Environment, Video Game Development, Animations, User Interface (UI) Design, Visualization (Computer Graphics), Computer Graphic Techniques, Performance Tuning, Software Design, Data-oriented programming, C# (Programming Language), Scripting, Linear Algebra, Data Structures
Intermediate · Specialization · 3 - 6 Months

University of Michigan
Skills you'll gain: Object Oriented Programming (OOP), Animation and Game Design, Interactive Data Visualization, Software Design, Technical Design, Data Structures, Visualization (Computer Graphics), Interactive Design, Programming Principles, Graphic and Visual Design, Python Programming, Generative AI, Simulations, Computer Graphics, Design, Computational Logic, Computer Programming, Creative Design, Data Import/Export, Computational Thinking
Beginner · Specialization · 3 - 6 Months

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

University of Alberta
Skills you'll gain: Software Architecture, Unified Modeling Language, Systems Architecture, Software Design, Software Design Documents, Software Visualization, Solution Architecture, Software Development, Software Documentation, Software Design Patterns, Enterprise Architecture, Maintainability, Scalability, Databases
Intermediate · Course · 1 - 4 Weeks

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 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

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, Unit Testing, Program Development, Software Design, Application Design, Test Driven Development (TDD)
Build toward a degree
Intermediate · Course · 1 - 3 Months