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.

University of Colorado Boulder
Skills you'll gain: Embedded Software, Embedded Systems, Debugging, Data Structures, System Programming, C (Programming Language), Hardware Architecture, Computer Architecture, Software Design, Maintainability, Peripheral Devices
★ 4.5 (532) · Intermediate · Course · 1 - 4 Weeks

Yale University
Skills you'll gain: Clinical Trials, Software Development Life Cycle, Medical Devices, Usability, Software Development, Medical Privacy, Verification And Validation, Biomedical Engineering, Risk Management, User Interface (UI), Software Design, Regulatory Compliance, Machine Learning, Software Testing, Entrepreneurship, Artificial Intelligence and Machine Learning (AI/ML), User Research, Cybersecurity
★ 4.8 (299) · Intermediate · Course · 3 - 6 Months

Skills you'll gain: IntelliJ IDEA, Object Oriented Design, UI Components, Software Design, Java, Java Programming, User Interface (UI) Design, Data Validation, Design, Application Development, Data-oriented programming, Programming Principles, Data Entry, Data Collection, Data Processing
★ 4.6 (22) · Beginner · Course · 1 - 4 Weeks

Skills you'll gain: Software Development Life Cycle, Cloud-Native Computing, Software Architecture, Hibernate (Java), Database Design, Docker (Software), Containerization, Git (Version Control System), GitHub, Object Oriented Programming (OOP), File I/O, Javascript, CI/CD, Restful API, Data Ethics, Java Programming, Version Control, Database Management, Software Development, Software Design
★ 4.6 (8K) · Beginner · Professional Certificate · 3 - 6 Months

Skills you'll gain: Data Ethics, Generative AI Agents, Generative AI, Software Design, AI Integrations, Software Architecture, Artificial Intelligence, Continuous Integration, Software Development, Application Security, Software Engineering, Code Review, Debugging, DevSecOps
★ 4.5 (276) · Intermediate · Course · 1 - 3 Months

Vanderbilt University
Skills you'll gain: Claude Code, Multimodal Prompts, Prompt Engineering, Prompt Patterns, Generative AI Agents, AI Orchestration, Context Engineering, AI Workflows, Version Control, Software Development, Generative AI, Quality Assurance, Software Quality Assurance, Software Development Life Cycle, Automation, Artificial Intelligence, Software Architecture, Software Testing, Software Design, Software Development Methodologies
★ 4.7 (181) · Beginner · Course · 1 - 3 Months

University of Colorado System
Skills you'll gain: Application Security, Vulnerability Assessments, Software Design, Software Design Patterns, Threat Management, Software Visualization, Cryptography
★ 4.6 (94) · Intermediate · Course · 1 - 3 Months
Universidad de los Andes
Skills you'll gain: User Story, Test Automation, Version Control, Software Testing, Test Script Development, Unified Modeling Language, Agile Software Development, Software Architecture, Git (Version Control System), Maintainability, Software Design Patterns, Unit Testing, Test Driven Development (TDD), Usability, Test Tools, Agile Methodology, Application Frameworks, Continuous Integration, Web Content Accessibility Guidelines, Software Design
Mastertrack · 6 - 12 Months

University of Colorado System
Skills you'll gain: Unified Modeling Language, Unit Testing, Software Design, Data Flow Diagrams (DFDs), Software Development Tools, Test Automation, Dataflow
★ 4.7 (159) · Intermediate · Course · 1 - 3 Months
Duke University
Skills you'll gain: File I/O, UI Components, Object Oriented Design, Java Programming, Software Design, User Interface (UI) Design, Debugging, Web Design and Development, Software Engineering, Hypertext Markup Language (HTML), Computer Programming, Program Development, Event-Driven Programming, Encryption, Algorithms, Javascript, Statistical Analysis, Data Processing, Data Analysis, Cascading Style Sheets (CSS)
★ 4.6 (22K) · Beginner · Specialization · 3 - 6 Months

University of Colorado System
Skills you'll gain: Database Design, Software Design, User Experience Design, Usability Testing, User Interface and User Experience (UI/UX) Design, Software Visualization, Software Architecture, Software Design Patterns, Application Security, Design Strategies, Servers, Operating Systems
★ 4.7 (135) · Intermediate · Course · 1 - 3 Months

Heriot-Watt University
Skills you'll gain: Database Systems, Responsible AI, Database Management, Software Engineering, Software Design, Combinatorics, Requirements Analysis, Object Oriented Design, Database Software, Database Development, Software Architecture, Unsupervised Learning, Database Architecture and Administration, Database Application, Graph Theory, Statistical Methods, Artificial Intelligence, Project Scoping, Algorithms, Computer Science
Degree · 1 - 4 Years