Software Design

Software Design is a process of defining the architecture, components, interfaces, and other characteristics of a software system. Coursera's Software Design catalogue helps you to understand and apply design principles to create an effective, maintainable, and scalable software system. You'll learn about various design patterns, interface designs, user experience considerations, system architectures, and managing design complexity. You'll also gain insights into how to effectively communicate and document design decisions, and the impacts of those decisions on software quality and performance. Whether you are a seasoned software engineer, a developer looking to advance your design skills, or someone transitioning into the field, mastering these design elements can help you create high-quality software products.
46credentials
1online degree
153courses

Filter by

Subject
Required

Language
Required

The language used throughout the course, in both instruction and assessments.

Learning Product
Required

Build job-relevant skills in under 2 hours with hands-on tutorials.
Learn from top instructors with graded assignments, videos, and discussion forums.
Learn a new tool or skill in an interactive, hands-on environment.
Get in-depth knowledge of a subject by completing a series of courses and projects.
Earn career credentials from industry leaders that demonstrate your expertise.
Earn career credentials while taking courses that count towards your Master’s degree.
Earn your Bachelor’s or Master’s degree online for a fraction of the cost of in-person learning.

Level
Required

Duration
Required

Subtitles
Required

Educator
Required

Explore the Software Design Course Catalog

  • Status: New

    Skills you'll gain: Salesforce Development, Salesforce, CI/CD, Software Architecture, Solution Architecture, Systems Architecture, Code Review, Relational Databases, Integration Testing, Software Design, Software Design Patterns, Database Design, Debugging, Maintainability, Enterprise Architecture, IT Security Architecture, Security Controls, System Design and Implementation, Systems Integration, Scalability

  • Status: New

    Skills you'll gain: Software Architecture, Systems Design, Software Design, Solution Architecture, Service Oriented Architecture, Maintainability, Systems Analysis, Enterprise Architecture, Scalability, Requirements Analysis

  • Status: Free Trial

    University of California, Irvine

    Skills you'll gain: Go (Programming Language), Back-End Web Development, Object Oriented Programming (OOP), System Programming, Debugging, Algorithms, OS Process Management, Functional Design, Computer Programming Tools, Data Access, Data Structures, Software Design, Operating Systems, Computer Architecture

  • Skills you'll gain: Software Configuration Management, Embedded Software, Embedded Systems, Git (Version Control System), Version Control, Build Tools, Software Development Tools, C (Programming Language), Development Environment, Program Development, Software Design, Hardware Architecture, Debugging, Command-Line Interface

  • Status: New
    Status: Free Trial

    Skills you'll gain: Event-Driven Programming, Computer Graphics, Application Development, Software Design, C++ (Programming Language), Microsoft Windows, Maintainability, Software Architecture, Application Lifecycle Management, System Configuration, Performance Tuning

  • Status: New

    Skills you'll gain: Software Design, Programming Principles

  • Status: New
    Status: Free Trial

    Skills you'll gain: Event-Driven Programming, Payment Systems, User Interface (UI), MySQL, Application Design, Database Application, Python Programming, Transaction Processing, Application Development, User Interface (UI) Design, Database Management, Software Design, Debugging

  • Status: Free Trial

    Skills you'll gain: Unit Testing, Data Structures, Event-Driven Programming, Interactive Data Visualization, Java, Java Programming, User Interface (UI), Object Oriented Programming (OOP), Debugging, Object Oriented Design, Computer Programming, Cryptography, Software Engineering, Performance Tuning, Encryption, Algorithms, Programming Principles, Data Analysis, Software Design, Problem Solving

  • Status: Free Trial

    University of Colorado System

    Skills you'll gain: Unified Modeling Language, Unit Testing, Software Design, Technical Design, Object Oriented Design, Software Engineering, Software Development Tools, JUnit, Systems Design, Data Ethics, Test Automation, Software Architecture, Software Development Methodologies, Dataflow

  • Status: Free Trial

    University of Michigan

    Skills you'll gain: Unified Modeling Language, JSON, Object Oriented Programming (OOP), Software Design, Debugging, Object Oriented Design, Data Processing, Web Scraping, Unit Testing, Programming Principles, Python Programming, Data Import/Export, Restful API, Image Analysis, Data Manipulation, Jupyter, Computer Programming, Data Structures, Software Engineering, File Management

  • Status: Free Trial

    University of Alberta

    Skills you'll gain: Software Architecture, Unified Modeling Language, Systems Architecture, Software Design, Software Design Documents, Software Visualization, Solution Architecture, Software Development, Software Documentation, Software Design Patterns, Enterprise Architecture, Maintainability, Scalability, Databases

  • Status: Free Trial

    Pontificia Universidad Católica del Perú

    Skills you'll gain: Software Development Life Cycle, Unified Modeling Language, Software Design, Software Engineering, Systems Development, Software Development, Waterfall Methodology, Requirements Analysis