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: Unity Engine, Animations, Visualization (Computer Graphics), 3D Assets, Software Design Patterns, Video Game Development, Object Oriented Programming (OOP), User Interface (UI), Application Performance Management, Game Design, Virtual Environment, Software Development Tools, Software Design, Computer Graphics, Performance Tuning, Scientific Visualization, Data Validation, Real Time Data, Scripting, C# (Programming Language)
Intermediate · Specialization · 3 - 6 Months

University of California, Santa Cruz
Skills you'll gain: Go (Programming Language), Data Structures, C and C++, Object Oriented Programming (OOP), Computer Programming, Unit Testing, Algorithms, Computer Science, Debugging, Integration Testing, Software Design
Intermediate · Course · 1 - 3 Months

Skills you'll gain: Predictive Modeling, Django (Web Framework), Data Visualization, Statistical Modeling, Feature Engineering, Application Programming Interface (API), Programming Principles, Relational Databases, Databases, Development Environment, Data Science, Data Cleansing, Animation and Game Design, Authorization (Computing), Scripting Languages, Integrated Development Environments, Software Development Tools, Style Guides, Software Design
Intermediate · Specialization · 3 - 6 Months

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

Skills you'll gain: Algorithms, Debugging, Java, Computer Programming, Software Design, Programming Principles, Object Oriented Programming (OOP), Program Development, Data Analysis Software, Data Import/Export, Integrated Development Environments
Beginner · Course · 1 - 3 Months

Universidad de los Andes
Skills you'll gain: Unified Modeling Language, Object Oriented Design, Software Design Documents, Object Oriented Programming (OOP), Software Engineering, Software Design
Intermediate · Guided Project · Less Than 2 Hours

University of Colorado Boulder
Skills you'll gain: Computational Logic, Systems Architecture, Software Design, Verification And Validation, Systems Design, Theoretical Computer Science, Communication Systems, Simulations, Algorithms, Safety and Security
Beginner · Course · 1 - 3 Months

SAE Institute México
Skills you'll gain: Video Game Development, Unity Engine, Game Design, Animation and Game Design, User Interface (UI), Software Design, Scripting
Beginner · Course · 1 - 4 Weeks

University of Virginia
Skills you'll gain: Model View Controller, Debugging, Software Design, User Interface and User Experience (UI/UX) Design, User Interface (UI), UI Components, Web Applications, Algorithms, JSON, User Story, Javascript, Event-Driven Programming, Automation
Beginner · Course · 1 - 4 Weeks

Skills you'll gain: Apple iOS, Swift Programming, Mobile Development, UI Components, Animations, Apple Xcode, Data Storage, Cloud Storage, Responsive Web Design, User Interface (UI), Human Computer Interaction, Databases, Software Design, Data Modeling
Intermediate · Course · 1 - 3 Months

Skills you'll gain: Programming Principles, Software Design
Intermediate · Course · 3 - 6 Months

Skills you'll gain: Responsive Web Design, UI Components, Web Development Tools, Web Applications, Web Design and Development, Software Design, Cascading Style Sheets (CSS), Web Design, Front-End Web Development, Content Management Systems, Full-Stack Web Development, Back-End Web Development, Application Deployment, Server Side, Hypertext Markup Language (HTML), Data Management
Intermediate · Course · 1 - 4 Weeks