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.

Instituto Tecnológico de Aeronáutica
Skills you'll gain: Test Driven Development (TDD), Unit Testing, JUnit, Program Development, Test Case, Test Automation, Software Testing, Testability, Maintainability, Software Design, Software Development, Object Oriented Design, Application Design, Programming Principles
★ 4.7 (419) · Intermediate · Course · 1 - 4 Weeks
Skills you'll gain: Application Security, Security Testing, DevSecOps, Secure Coding, Security Requirements Analysis, Open Web Application Security Project (OWASP), Cyber Security Assessment, Security Software, Software Design, Security Controls, Cyber Security Strategy, Computer Security, Information Systems Security, Security Strategy, Data Security, Network Security, Security Management, Application Development, Computer Programming, Python Programming
Mixed · Course · 1 - 3 Months

Edureka
Skills you'll gain: JUnit, Apache Maven, Java Programming, Java, Unit Testing, Software Design Patterns, Test Automation, Build Tools, Software Design, Data Access, Maintainability, Software Testing, IntelliJ IDEA, SQL, Computer Programming, Programming Principles, Object Oriented Programming (OOP), Software Engineering, Software Development, Design Strategies
Intermediate · Course · 1 - 4 Weeks

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

Skills you'll gain: LLM Application, Kubernetes, Systems Architecture, Large Language Modeling, Data Pipelines, Software Architecture, Software Design, Model Deployment, Application Deployment, Microservices, Apache Airflow, Containerization, Infrastructure Architecture, Cloud-Native Computing, Scalability, AWS CloudFormation, Managed Services, Azure DevOps, Open Source Technology, Diagram Design
Intermediate · Course · 1 - 3 Months

University of Colorado System
Skills you'll gain: Object Oriented Design, Object Oriented Programming (OOP), Unity Engine, Software Design Patterns, Data Structures, C# (Programming Language), Video Game Development, Software Design, Programming Principles, Graph Theory, Software Architecture, Algorithms
★ 4.6 (149) · Intermediate · Course · 1 - 4 Weeks

Skills you'll gain: Software Design Patterns, Software Design, C and C++, C++ (Programming Language), Object Oriented Design, Software Architecture, Code Reusability, Programming Principles, Object Oriented Programming (OOP), Prototyping, Memory Management, Performance Tuning
Intermediate · Course · 1 - 3 Months

University of Minnesota
Skills you'll gain: Software Design Patterns, Software Design, Software Engineering, Application Security, Object Oriented Design, Software Architecture, Software Quality (SQA/SQC), Threat Modeling, Maintainability, Code Coverage, Application Deployment, Continuous Deployment, Continuous Delivery, Software Testing, Continuous Integration, CI/CD, Test Driven Development (TDD), Software Documentation, Build Tools, Technical Documentation
★ 4.5 (471) · Intermediate · Course · 1 - 3 Months

University of Colorado Boulder
Skills you'll gain: Object Oriented Design, JUnit, Object Oriented Programming (OOP), Software Design Patterns, Software Engineering, Java, Unified Modeling Language, Software Design, Java Programming, Software Architecture, Model View Controller, Programming Principles, Conceptual Design
★ 4.6 (8) · Intermediate · Course · 1 - 3 Months
École Polytechnique Fédérale de Lausanne
Skills you'll gain: Scala Programming, Application Design, Software Design, Software Design Patterns, Functional Design, Other Programming Languages, Event-Driven Programming, Functional Testing, Java, Programming Principles, Performance Tuning, Algorithms
★ 4.5 (3.1K) · Intermediate · Course · 1 - 3 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
★ 3.4 (23) · Beginner · Course · 1 - 4 Weeks

Skills you'll gain: Event-Driven Programming, Payment Systems, User Interface (UI), UI Components, MySQL, Application Design, Database Application, Python Programming, Transaction Processing, Application Development, User Interface (UI) Design, Database Management, Software Design
Mixed · Course · 1 - 4 Weeks