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: LLM Application, Kubernetes, Systems Architecture, Large Language Modeling, Data Pipelines, Software Architecture, Software Design, Model Deployment, Application Deployment, Microservices, Apache Airflow, Containerization, Infrastructure Architecture, Cloud-Native Computing, Scalability, AWS CloudFormation, Managed Services, Azure DevOps, Open Source Technology, Diagram Design
Intermediate · Course · 1 - 3 Months

University of Colorado System
Skills you'll gain: Application Security, Vulnerability Assessments, Software Design, Threat Modeling, Vulnerability Management, Security Engineering, Secure Coding, Software Design Patterns, Software Architecture, Threat Management, Software Visualization, Exploitation techniques, Cryptography, Blockchain, Public Key Cryptography Standards (PKCS)
★ 4.6 (94) · Intermediate · Course · 1 - 3 Months

University of Alberta
Skills you'll gain: Object Oriented Design, Unified Modeling Language, Software Design, Object Oriented Programming (OOP), Java, Java Programming, Maintainability, Code Reusability, Software Design Documents, Application Design, Conceptual Design, Diagram Design, Design Elements And Principles
★ 4.7 (2.4K) · Intermediate · Course · 1 - 4 Weeks
University of Alberta
Skills you'll gain: Requirements Analysis, Requirements Elicitation, Functional Requirement, Backlogs, User Requirements Documents, Change Control, User Story, System Requirements, Acceptance Testing, Agile Methodology, Agile Software Development
★ 4.8 (3.2K) · Mixed · Course · 1 - 4 Weeks

Skills you'll gain: Systems Development Life Cycle, Software Development Life Cycle, Object Oriented Programming (OOP), Java Programming, Java, Program Development, Code Reusability, Software Development, Object Oriented Design, Development Environment, Integrated Development Environments, Application Development, Computer Programming, Programming Principles, Software Design, Computational Logic
★ 4.4 (390) · Beginner · Course · 1 - 4 Weeks

University of Colorado System
Skills you'll gain: Distributed Denial-Of-Service (DDoS) Attacks, Intrusion Detection and Prevention, Role-Based Access Control (RBAC), AWS Identity and Access Management (IAM), Amazon Web Services, Amazon Elastic Compute Cloud, Identity and Access Management, Cloud Computing, User Provisioning, Security Controls, Cloud Management, Malware Protection, Cloud Infrastructure, Cloud Security, Security Engineering, Authorization (Computing), Network Security, Hardening, Cryptographic Protocols, Cybersecurity
★ 4.5 (658) · Beginner · Specialization · 3 - 6 Months

University of Colorado System
Skills you'll gain: Unified Modeling Language, Unit Testing, Software Design, Data Flow Diagrams (DFDs), Software Engineering Tools, Software Engineering, Software Development Tools, JUnit, Software Testing, Diagram Design, Design, Data Ethics, Test Automation, Dataflow
★ 4.7 (159) · Intermediate · Course · 1 - 3 Months

University of Colorado Boulder
Skills you'll gain: User Research, User Experience Design, User Experience, User Interface and User Experience (UI/UX) Design, Usability, Verification And Validation, UI/UX Research, UI/UX Strategy, Internet Of Things, API Design, User Interface (UI), Embedded Software, Amazon Web Services, Interactive Design, Cloud Computing Architecture, Human Computer Interaction, Embedded Systems, Application Programming Interface (API), Prototyping, Software Development
★ 4.5 (148) · Intermediate · Specialization · 3 - 6 Months

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

Microsoft
Skills you'll gain: User Interface (UI), Prototyping, Usability Testing, User Interface and User Experience (UI/UX) Design, Wireframing, Interactive Design, Interaction Design, User Experience Design, Figma (Design Software), Usability, User Interface (UI) Design, Mockups, Design Thinking, User Research, Design, Style Guides
★ 4.4 (64) · Mixed · Course · 1 - 4 Weeks

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

Pontificia Universidad Católica del Perú
Skills you'll gain: Software Development Life Cycle, Unified Modeling Language, Software Development Methodologies, Software Development, Process Driven Development, Waterfall Methodology
★ 4.9 (139) · Beginner · Course · 1 - 4 Weeks