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: Computational Thinking, C++ (Programming Language), Algorithms, Code Reusability, Data Structures, Maintainability, C (Programming Language), Software Design, Performance Tuning, Data Processing, Computer Architecture, Hardware Architecture, Scalability, Application Development, Memory Management, Systems Architecture, Debugging, Development Testing, Web Frameworks, Engineering
Intermediate · Course · 3 - 6 Months

Skills you'll gain: Object Oriented Design, Object Oriented Programming (OOP), Code Reusability, File Systems, File Management, File I/O, Operating Systems, Program Development, Maintainability, Software Design, Python Programming, Scalability, Automation, IT Automation, Reliability, Software Development, Productivity, Operations, Design
Beginner · Course · 1 - 4 Weeks

Skills you'll gain: Solution Architecture, Software Architecture, Systems Architecture, Cloud Computing Architecture, Cloud Solutions, Cloud-Native Computing, Service Oriented Architecture, Solution Design, Requirements Elicitation, Model View Controller, Software Design, Scalability, Software Design Patterns, Microservices, Azure DevOps, DevOps, Generative AI, AWS Identity and Access Management (IAM), Machine Learning, Good Clinical Practices (GCP)
Intermediate · Course · 1 - 3 Months
University of Alberta
Skills you'll gain: Requirements Analysis, Requirements Elicitation, Backlogs, Change Control, User Story, Software Design, Acceptance Testing, Agile Software Development
★ 4.8 (3.2K) · Mixed · Course · 1 - 4 Weeks

Skills you'll gain: Angular, Frontend Integration, Restful API, Application Programming Interface (API), Data Validation, API Design, Front-End Web Development, Web Frameworks, Web Applications, Frontend Performance, TypeScript, Business Logic, UI Components, Application Design, Usability, HTML and CSS, Web Servers, Responsive Web Design, Software Design, Application Deployment
Intermediate · Course · 1 - 4 Weeks

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: Object Oriented Programming (OOP), File I/O, Data Persistence, Object Oriented Design, Java, Java Programming, File Management, Memory Management, Application Development, Maintainability, Computer Programming, Software Design, Development Environment, Programming Principles, Data Structures, Data Management, Integrated Development Environments, Software Installation
★ 4.6 (263) · Beginner · Specialization · 3 - 6 Months

Skills you'll gain: .NET Framework, ASP.NET, Cross Platform Development, Web Components, Performance Tuning, Web Design and Development, Bootstrap (Front-End Framework), Front-End Web Development, Web Applications, Application Design, Application Development, UI Components, Full-Stack Web Development, Microservices, Model View Controller, Software Design, Scalability, Microsoft Azure, Web Services, Application Programming Interface (API)
Intermediate · Course · 1 - 4 Weeks

Skills you'll gain: File I/O, Object Oriented Programming (OOP), Object Oriented Design, Unit Testing, Software Design Patterns, Software Design, Test Tools, Computer Programming, Code Reusability, Python Programming, Maintainability
Beginner · Course · 1 - 3 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, Java, Java Programming, User Interface and User Experience (UI/UX) Design, Software Design, Software Architecture, User Interface (UI) Design, API Design, Model View Controller, Software Development, Test Driven Development (TDD), Programming Principles, Databases
★ 4.2 (29) · Intermediate · Specialization · 3 - 6 Months

Skills you'll gain: Apple iOS, iOS Development, Swift Programming, UI Components, Animations, User Interface (UI), User Interface (UI) Design, Software Design, Typography, Code Reusability
Intermediate · Course · 1 - 4 Weeks

LearnQuest
Skills you'll gain: Software Documentation, Technical Documentation, Regression Testing, Technical Communication, Maintainability, Debugging, Technical Writing, Code Review, Development Testing, Application Design, Unit Testing, Software Testing, Software Development, Application Development, Software Design, Scalability, Software Architecture, GitHub, Version Control, Technical Management
Beginner · Course · 1 - 3 Months