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: Vibe coding, Responsible AI, Prompt Engineering, Prompt Patterns, Software Engineering, Integrated Development Environments, AI Workflows, Software Development, Application Development, Web Applications, UI Components, AI Enablement, Software Design, Code Review, Front-End Web Development, Development Testing, Web Development, Software Testing, Secure Coding, User Interface (UI) Design
Intermediate · Course · 1 - 3 Months

Skills you'll gain: Secure Coding, Application Security, Open Web Application Security Project (OWASP), Security Engineering, Cyber Attacks, Cybersecurity, Security Requirements Analysis, Security Testing, Threat Modeling, Vulnerability Assessments, Software Design, Encryption, Vulnerability Management, Security Controls, Data Security, Cryptography, Continuous Monitoring, Authentications, Development Testing, System Monitoring
Intermediate · Course · 1 - 3 Months

University of Virginia
Skills you'll gain: Model View Controller, Design and Product, Debugging, Integrated Development Environments, Software Design, User Interface (UI), Responsive Web Design, HTML and CSS, Data Modeling, Data Store, Database Development, Database Design, Web Design and Development, Software Development Tools, NoSQL, User Interface (UI) Design, Web Design, Database Architecture and Administration, UI Components, Programming Principles
Beginner · Specialization · 1 - 3 Months

Board Infinity
Skills you'll gain: Java Platform Enterprise Edition (J2EE), Application Performance Management, Software Design Patterns, Java, Enterprise Architecture, Java Programming, Enterprise Application Management, Secure Coding, Software Design, Model View Controller, System Monitoring, Security Controls, Software Architecture, Application Security, Maintainability, Application Frameworks, Programming Principles, Authorization (Computing), Authentications, Program Development
Intermediate · Course · 1 - 4 Weeks

Board Infinity
Skills you'll gain: Unit Testing, TypeScript, Angular, Software Testing, Development Testing, Test Case, Frontend Performance, Software Design, UI Components, Application Programming Interface (API), Restful API, Application Deployment, Frontend Integration, Enterprise Architecture, User Interface (UI), Application Frameworks, JavaScript Frameworks, Scalability, Software Architecture, Performance Tuning
Intermediate · Specialization · 1 - 3 Months

Skills you'll gain: Software Architecture, Code Review, AI Workflows, AI Integrations, Software Design, Python Programming, Version Control, Java Programming
Intermediate · Course · 1 - 3 Months

Duke University
Skills you'll gain: Software Design, Programming Principles, Program Development, Code Reusability, AI Personalization, Data Integration, Databases, Computer Programming, Object Oriented Programming (OOP), User Interface (UI), Data Mapping, Algorithms, Java, Java Programming, Data Structures, Data Management
Intermediate · Course · 1 - 3 Months

Skills you'll gain: Code Review, Object Oriented Design, Maintainability, Software Design Patterns, Software Design, Functional Design, Code Reusability, Continuous Integration, Test Automation, Software Quality (SQA/SQC), Test Driven Development (TDD), Debugging, Software Documentation, Programming Principles, Scalability, Quality Improvement, Python Programming, Continuous Improvement Process, Style Guides, Continuous Monitoring
Beginner · Course · 1 - 3 Months

John Wiley & Sons
Skills you'll gain: Object Oriented Design, Java, Java Programming, Object Oriented Programming (OOP), Software Design Patterns, Maintainability, Software Design, Code Reusability, Functional Design, Data Management, Data Modeling
Intermediate · Course · 1 - 3 Months

Skills you'll gain: Scalability, Code Reusability, Software Design, Flutter (Software), Computational Logic, Functional Design, Application Development, Application Design, Computer Programming, Automation
Beginner · Course · 1 - 4 Weeks

Coursera
Skills you'll gain: Unit Testing, Test Driven Development (TDD), Continuous Integration, CI/CD, Software Testing, Continuous Deployment, Testability, Test Script Development, Model Training, Development Testing, Tensorflow, Maintainability, Applied Machine Learning, Software Engineering, Code Reusability, Machine Learning Methods, Python Programming, Software Design
Intermediate · Course · 1 - 4 Weeks

Skills you'll gain: TypeScript, Object Oriented Design, Object Oriented Programming (OOP), Enterprise Application Management, Software Design Patterns, Software Design, Code Reusability, Maintainability, Secure Coding, Application Development, Programming Principles, Software Engineering, Javascript, Full-Stack Web Development, Web Development, Software Development, Computer Programming, Scalability
Beginner · Course · 1 - 4 Weeks