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 Glasgow
Skills you'll gain: Software Development Life Cycle, Software Design, Web Development Tools, Application Design, Maintainability, Software Technical Review, Programming Principles, Functional Specification, Requirements Analysis, Program Management, Requirements Elicitation
Beginner · Course · 1 - 4 Weeks

Skills you'll gain: Software Design Patterns, Computational Thinking, Software Design, Algorithms, Theoretical Computer Science, Software Development, Data Structures, Computer Programming, Problem Solving, Computer Science, Machine Learning Methods
Advanced · Course · 1 - 4 Weeks

Skills you'll gain: Data Structures, Object Oriented Programming (OOP), Object Oriented Design, Java Programming, Computational Thinking, Java, Algorithms, Programming Principles, Computer Programming, Solution Design
Advanced · Course · 1 - 3 Months

Skills you'll gain: Software Development Life Cycle, Software Architecture, Full-Stack Web Development, Software Design, Web Development, Software Development Methodologies, Software Design Patterns, Development Environment, Unified Modeling Language, Software Engineering, Web Applications, Software Development Tools, Software Development, Application Deployment, Programming Principles, Front-End Web Development, Web Language, Back-End Web Development, Software Documentation, Python Programming
Beginner · Course · 1 - 3 Months

Skills you'll gain: 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, Computer Programming, Software Engineering, Programming Principles, Software Design, Computational Logic
Beginner · Course · 1 - 4 Weeks

University of Minnesota
Skills you'll gain: Software Testing, JUnit, Verification And Validation, Unit Testing, Test Case, Test Automation, Development Testing, Test Planning, Test Tools, White-Box Testing, Code Coverage, Software Quality Assurance, Functional Testing, Test Script Development, Systems Development Life Cycle, Test Data, Technical Communication
Intermediate · Course · 1 - 4 Weeks

Skills you'll gain: File I/O, Git (Version Control System), Software Development Methodologies, JUnit, Requirements Analysis, Version Control, Systems Development Life Cycle, Application Development, Software Development Life Cycle, Full-Stack Web Development, Test Driven Development (TDD), SQL, Software Development, Restful API, Database Management, Object Oriented Programming (OOP), Digital Transformation, GitHub Copilot, Java Programming, Generative AI
Beginner · Professional Certificate · 3 - 6 Months

Skills you'll gain: Cloud Deployment, Software Development Life Cycle, CI/CD, Server Side, Istio, Cloud-Native Computing, Software Architecture, Cloud Computing Architecture, Application Deployment, Restful API, Responsive Web Design, Node.JS, Django (Web Framework), Git (Version Control System), HTML and CSS, Front-End Web Development, Cloud Computing, Data Ethics, Python Programming, Software Development
Build toward a degree
Beginner · Professional Certificate · 3 - 6 Months

Skills you'll gain: User Story, Cloud Deployment, CI/CD, Software Development Life Cycle, Open Web Application Security Project (OWASP), Continuous Integration, Istio, Linux Commands, Software Architecture, Test Driven Development (TDD), Cloud Computing Architecture, Application Deployment, Devops Tools, Restful API, Git (Version Control System), DevOps, Grafana, Software Engineering, Python Programming, Application Development
Build toward a degree
Beginner · Professional Certificate · 3 - 6 Months

University of Minnesota
Skills you'll gain: Open Web Application Security Project (OWASP), Cucumber (Software), Software Testing, Selenium (Software), Gherkin (Scripting Language), JUnit, Verification And Validation, Test Automation, Unit Testing, Security Testing, Regression Testing, Test Case, Software Development Tools, Testability, White-Box Testing, Behavior-Driven Development, Code Coverage, Performance Testing, Development Testing, Test Engineering
Intermediate · Specialization · 3 - 6 Months

Skills you'll gain: Prompt Engineering, Prompt Patterns, ChatGPT, Generative AI, Generative Model Architectures, Data Ethics, Generative AI Agents, Software Design Documents, Software Design, AI literacy, AI Integrations, Software Architecture, Agentic Workflows, Continuous Integration, Software Development, LLM Application, Artificial Intelligence and Machine Learning (AI/ML), Application Security, Software Engineering, Code Review
Intermediate · Specialization · 1 - 3 Months

Skills you'll gain: QuickBooks (Accounting Software), Vendor Management, Ledgers (Accounting), Accounting Software, Inventory and Warehousing, Inventory Management, Payroll Processing, Accounting Records, Financial Reporting, Payroll Administration, Business Reporting, Customer Data Management, Management Reporting, Payroll Systems, Financial Analysis, Billing & Invoicing, Accounting and Finance Software, Business Software, Business, Business Analysis
Beginner · Specialization · 3 - 6 Months