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, 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

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

The Hong Kong University of Science and Technology
Skills you'll gain: White-Box Testing, Acceptance Testing, Software Development Methodologies, Configuration Management, Debugging, Systems Development Life Cycle, Software Development Life Cycle, Software Testing, Software Development, Software Engineering, Unified Modeling Language, Software Quality Assurance, Software Configuration Management, User Acceptance Testing (UAT), System Design and Implementation, Change Control, Test Case, Requirements Analysis, Waterfall Methodology, Project Management
★ 4.6 (141) · Intermediate · Course · 1 - 3 Months
University of Alberta
Skills you'll gain: Agile Software Development, Agile Methodology, Requirements Analysis, Scrum (Software Development), Software Development, Product Requirements, Requirements Management, Product Management, Agile Project Management, Software Development Methodologies, Software Engineering, Functional Requirement, Systems Development Life Cycle, Project Planning, Process Development, Project Management
★ 4.6 (7.8K) · 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 Alberta
Skills you'll gain: Agile Software Development, Requirements Analysis, Requirements Management, Product Requirements, Agile Methodology, Software Development, Product Management, Process Development, Software Engineering, Technical Product Management, Project Schedules, Software Development Methodologies, Project Planning, Project Performance
★ 4.4 (42) · 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: 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
★ 4 (58) · Beginner · Specialization · 3 - 6 Months

Skillshare
Skills you'll gain: Unreal Engine, Animations, 3D Assets, Animation and Game Design, Virtual Environment, Game Design, 3D Modeling, Video Game Development, Computer Graphics, Timelines, Visual Storytelling, Prototyping, Design Strategies, Data Import/Export, Layout Design, User Interface (UI), Interactive Design, Application Deployment, Creative Design, Software Installation
Beginner · Specialization · 3 - 6 Months

Skills you'll gain: Software Architecture, Solution Architecture, Microservices, Software Design, Business Process Modeling, Software Design Patterns, Security Architecture Review, Technology Strategies, Event-Driven Programming, Business Modeling, Serverless Computing, Digital Transformation, Scalability, Distributed Computing, Context Management, Restful API, Innovation
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

Indian Institute of Technology Guwahati
Skills you'll gain: SolidWorks (CAD), Computer-Aided Design, Computer Graphics, 3D Modeling, Mechanical Design, Engineering Drawings, Visualization (Computer Graphics), Assembly Drawing, Prototyping, Computer Graphic Techniques, Animations
★ 4.2 (12) · Intermediate · Course · 1 - 3 Months