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.

Duke University
Skills you'll gain: Python Programming, Simulations, Debugging, Statistical Methods, Pandas (Python Package), Program Development, Test Case, Data Science, Development Testing, Software Design, Computational Thinking, Sampling (Statistics), Data Manipulation, Programming Principles, Systems Integration, Software Development
Beginner · Course · 1 - 4 Weeks

Packt
Skills you'll gain: Game Design, Video Game Development, Animation and Game Design, Software Design Documents, Software Design, Scripting, Scripting Languages, Program Development, 3D Modeling, Computer Graphics, Interactive Design, Programming Principles, User Interface (UI), Development Environment, Visual Design
Beginner · Course · 1 - 3 Months

Illinois Tech
Skills you'll gain: Unified Modeling Language, File I/O, Debugging, Object Oriented Programming (OOP), Object Oriented Design, Python Programming, Computer Programming, Programming Principles, System Programming, Pseudocode, Program Development, Event-Driven Programming, Software Design, User Interface (UI), Data Structures, Graphical Tools
★ 4.7 (21) · Beginner · Course · 1 - 3 Months

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: Computer Graphics, Software Architecture, Development Environment, Software Design, Maintainability, Software Visualization, Systems Architecture, Software Design Patterns, Code Reusability, Graphics Software, Systems Design, Cross Platform Development, Computer Graphic Techniques, Image Quality, System Design and Implementation, Video Game Development, Computer Programming Tools, Dataflow, Performance Tuning, Scalability
★ 4.8 (20) · Beginner · Specialization · 3 - 6 Months

Advancing Women in Tech
Skills you'll gain: Software Architecture, Systems Architecture, Systems Design, Technical Management, Software Design, API Design, System Design and Implementation, Technical Product Management, Cross-Functional Team Leadership, Engineering Management, Program Management, Microservices, Product Management, Cross-Functional Collaboration, Solution Architecture, Leadership and Management, Application Programming Interface (API), Amazon Web Services, Management Reporting
★ 4.6 (19) · Mixed · Course · 1 - 4 Weeks

Edureka
Skills you'll gain: Prompt Engineering, Vibe coding, Prompt Engineering Tools, Prompt Patterns, Integrated Development Environments, Software Development Tools, Context Engineering, Application Development, Full-Stack Web Development, Embeddings, Continuous Integration, Code Review, Software Development, Web Development, Web Applications, Software Documentation, Software Engineering, Software Testing, Software Design, Building Codes
Beginner · Course · 1 - 4 Weeks

University of Colorado Boulder
Skills you'll gain: Object Oriented Programming (OOP), Object Oriented Design, Software Documentation, Technical Documentation, Maintainability, Programming Principles, Software Design, Code Reusability, Python Programming
★ 4.5 (14) · Intermediate · Course · 1 - 3 Months

Skills you'll gain: Blockchain, Front-End Web Development, Application Development, Web Development, Transaction Processing, Development Testing, Frontend Integration, Cryptography, FinTech, Emerging Technologies, Software Design, HTML and CSS, Software Architecture, Test Script Development, User Interface (UI) Design, Experience Design, Javascript, Application Deployment, Payment Systems, Data Management
★ 4.8 (24) · Intermediate · Course · 1 - 4 Weeks

Skills you'll gain: C# (Programming Language), Object Oriented Programming (OOP), Software Design Patterns, Software Architecture, Object Oriented Design, Software Design, Secure Coding, Computer Programming, System Design and Implementation, Data Integrity, Code Reusability, Maintainability, Scalability, Programming Principles, Software Documentation, AI Integrations
Beginner · Course · 1 - 3 Months

Skills you'll gain: Model Deployment, Cloud-Native Computing, Application Deployment, Containerization, Security Controls, Kubernetes, IBM Cloud, Network Planning And Design, MLOps (Machine Learning Operations), Cloud Computing, Applied Machine Learning, Computing Platforms, Enterprise Application Management, Cloud Infrastructure, Docker (Software), DevOps, General Networking, Network Infrastructure, Software Design, Software Development
Intermediate · Course · 3 - 6 Months

University of California San Diego
Skills you'll gain: Embedded Software, Internet Of Things, Unit Testing, Software Design, System Testing, Software Design Documents, Software Development, Technical Communication, Software Documentation, Mobile Development Tools, Technical Design, Systems Design, System Design and Implementation, Ideation, Embedded Systems, Innovation, Communication Systems, System Implementation, Systems Integration
★ 3.7 (10) · Mixed · Course · 1 - 4 Weeks