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.

Simplilearn
Skills you'll gain: AI Personalization, Wireframing, Generative AI, Prototyping, Figma (Design Software), User Interface and User Experience (UI/UX) Design, User Flows, UI Components, Technical Design, Design, Software Design, Software Architecture, Responsive Web Design
Beginner · Course · 1 - 4 Weeks

Coursera
Skills you'll gain: Figma (Design Software), UI Components, Style Guides, Wireframing, Software Design, Mockups, Application Design, Web Design, Application Development, Software Engineering
Intermediate · Guided Project · Less Than 2 Hours

Skills you'll gain: Software Design, IntelliJ IDEA, Object Oriented Programming (OOP), Programming Principles, Java, Integrated Development Environments, Data Structures, Command-Line Interface
Beginner · Course · 1 - 4 Weeks

Northeastern University
Skills you'll gain: Systems Thinking, Software Visualization, Software Engineering, Object Oriented Programming (OOP), Application Design, Software Development Life Cycle, Software Design, Systems Development, Software Development, Business Architecture, Business Risk Management, User Centered Design, Process Design
Beginner · Course · 1 - 4 Weeks

Skills you'll gain: Algorithms, Technical Communication, Pseudocode, Computational Thinking, Solution Design, Programming Principles, Software Design, Theoretical Computer Science, Data Structures, Mathematical Modeling, Applied Mathematics, Computer Science
Beginner · Course · 1 - 4 Weeks

Skills you'll gain: Jenkins, Selenium (Software), Apache Maven, CI/CD, Object Oriented Programming (OOP), JUnit, Java, Software Design Patterns, Test Automation, Software Testing, Maintainability, Test Tools, Test Case, Browser Compatibility, Software Design
Intermediate · Course · 1 - 3 Months

Universidad Nacional Autónoma de México
Skills you'll gain: Data Mining, Database Design, Scalability, Database Systems, Relational Databases, Unstructured Data, Transaction Processing, Databases, Systems Design, Big Data, Data Architecture, NoSQL, Data Processing, Maintainability, Software Design, SQL, Apache Hadoop
Intermediate · Course · 1 - 4 Weeks

Skills you'll gain: Internet Of Things, Wireless Networks, Software Design, Application Design, Emerging Technologies, System Design and Implementation, General Networking, Cloud Applications, Systems Architecture, Hardware Architecture, Data Security, User Centered Design, Prototyping, Information Privacy, Open Source Technology, Scalability
Beginner · Course · 1 - 4 Weeks

University of Washington
Skills you'll gain: Other Programming Languages, Software Design, Ruby (Programming Language), Programming Principles, Data Structures, Software Architecture, Computer Programming, Functional Design, Debugging
Intermediate · Course · 1 - 4 Weeks

Scrimba
Skills you'll gain: Software Design Patterns, Software Design, Computational Thinking, Algorithms, Program Development, Computer Programming, Software Development, Data Structures, Problem Solving, Computer Science, Machine Learning Methods
Advanced · Course · 1 - 4 Weeks

Instituto Tecnológico de Aeronáutica
Skills you'll gain: Test Driven Development (TDD), Unit Testing, JUnit, Test Automation, Software Testing, Testability, Maintainability, Software Design, Software Development, Object Oriented Programming (OOP), Debugging, Programming Principles
Intermediate · Course · 1 - 4 Weeks

CentraleSupélec
Skills you'll gain: Android Studio, Android Development, Storyboarding, Application Design, Mobile Development, Application Development, Java, User Interface (UI) Design, Software Design, Interactive Design, Development Environment, Software Installation, User Centered Design
Mixed · Course · 1 - 3 Months