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 Minnesota
Skills you'll gain: UI/UX Research, User Research, Design Research, User Interface (UI), User Interface (UI) Design, Usability Testing, Prototyping, User Interface and User Experience (UI/UX) Design, Usability, Interactive Design, User Experience Design, User Experience, Human Computer Interaction, User Centered Design, Graphic and Visual Design, Persona (User Experience), Ideation, Web Content Accessibility Guidelines, UI/UX Strategy, Peer Review
Intermediate · Specialization · 3 - 6 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
Build toward a degree
Intermediate · 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 Development Tools, JUnit, Development Testing, Data Ethics, Test Automation, Software Development Methodologies, Dataflow
Intermediate · Course · 1 - 3 Months

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, Load Balancing, Authorization (Computing), Network Security, Hardening, Cryptographic Protocols, Cybersecurity
Beginner · Specialization · 3 - 6 Months

University of Colorado System
Skills you'll gain: Requirements Elicitation, Software Design Documents, Requirements Analysis, Mockups, Security Requirements Analysis, Interviewing Skills, User Requirements Documents, Systems Development Life Cycle, Data Flow Diagrams (DFDs), Storyboarding, Functional Requirement, Goal Setting, Software Development Methodologies, Software Documentation, Diagram Design, Agile Methodology, Product Requirements, Unified Modeling Language, Risk Management Framework, Risking
Beginner · Specialization · 3 - 6 Months
University of California San Diego
Skills you'll gain: Interaction Design, Usability, Human Centered Design, Mockups, Storyboarding, Design Strategies, Design Thinking, User Centered Design, Prototyping, Usability Testing, Design Research, User Research, UI/UX Research, Qualitative Research, Creativity, Interviewing Skills
Mixed · Course · 1 - 4 Weeks

Board Infinity
Skills you'll gain: Test Case, Test Script Development, Test Planning, Test Automation, Test Engineering, Continuous Integration, Test Tools, CI/CD, Software Quality Assurance, Continuous Delivery, Quality Assurance, Software Quality (SQA/SQC), Software Engineering Tools
Beginner · Course · 1 - 4 Weeks

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

Skills you'll gain: Jest (JavaScript Testing Framework), CI/CD, Model View Controller, User Acceptance Testing (UAT), Continuous Integration, Cucumber (Software), Postman API Platform, Ansible, Software Testing, OAuth, Web Development Tools, Behavior-Driven Development, Application Performance Management, Prometheus (Software), Authentications, Test Driven Development (TDD), Package and Software Management, Cloud API, Javascript, Software Engineering
Beginner · Specialization · 3 - 6 Months

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, Computer Programming Tools, System Configuration, Code Reusability, Peripheral Devices
Intermediate · Course · 1 - 4 Weeks

Skills you'll gain: Unit Testing, Software Development Life Cycle, Linux Commands, Software Architecture, Bash (Scripting Language), Shell Script, Git (Version Control System), GitHub, Full-Stack Web Development, Flask (Web Framework), Software Design, Version Control, File Management, Unix Shell, Linux, Application Deployment, Software Development Methodologies, Data Import/Export, Python Programming, NumPy
Beginner · Specialization · 3 - 6 Months

Clemson University
Skills you'll gain: Data Structures, Algorithms, Theoretical Computer Science, Computer Programming, Computer Science, Probability, Design Strategies, Analysis
Build toward a degree
Intermediate · Course · 1 - 3 Months