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.
48credentials
148courses

Most popular

Trending now

New releases

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.

Level
Required

Duration
Required

Subtitles
Required

Educator
Required

Explore the Software Design Course Catalog

  • Status: Free Trial

    Universidad Nacional Autónoma de México

    Skills you'll gain: Data Mining, Database Design, Scalability, Database Systems, Relational Databases, Unstructured Data, Transaction Processing, Databases, Systems Design, Big Data, Data Architecture, NoSQL, Data Processing, Maintainability, Software Design, SQL, Apache Hadoop

  • Skills you'll gain: Jenkins, Selenium (Software), Apache Maven, CI/CD, Object Oriented Programming (OOP), JUnit, Java, Software Design Patterns, Test Automation, Software Testing, Maintainability, Test Tools, Test Case, Browser Compatibility, Software Design

  • Status: New
    Status: Free Trial

    Skills you'll gain: TypeScript, Object Oriented Design, Object Oriented Programming (OOP), Programming Principles, Software Design Patterns, Software Design, Computer Programming, Software Architecture, Debugging, Maintainability, Software Development, Javascript, Web Development Tools, Web Development, Data Validation

  • Status: Preview

    Skills you'll gain: Computer Science, Computer Engineering, Computer Architecture, Computer Programming, System Programming, Virtual Machines, Operating Systems, Software Architecture, Algorithms, Software Design, Program Development, Object Oriented Programming (OOP), Data Structures, Computer Graphics

  • Status: Free Trial

    University of California, Santa Cruz

    Skills you'll gain: Go (Programming Language), Debugging, C (Programming Language), Data Structures, C and C++, C++ (Programming Language), Object Oriented Programming (OOP), Computer Programming, Code Review, Unit Testing, Command-Line Interface, Data-oriented programming, Integrated Development Environments, Computer Science, Algorithms, File Systems, Computational Thinking, Software Technical Review, Integration Testing, Software Design

  • Status: Free Trial

    University of California, Santa Cruz

    Skills you'll gain: C++ (Programming Language), Go (Programming Language), Data Structures, C and C++, Object Oriented Programming (OOP), Software Design Patterns, Debugging, Computer Programming, Unit Testing, Algorithms, C (Programming Language), Programming Principles, Integrated Development Environments, Graph Theory, Computer Science, File Systems, Artificial Intelligence, Integration Testing, Software Design, Game Design

  • Status: Free Trial

    University at Buffalo

    Skills you'll gain: Blockchain, Program Development, Secure Coding, Development Environment, Web Development Tools, Software Design, Integrated Development Environments, Solution Design, Event-Driven Programming, Object Oriented Programming (OOP), Transaction Processing, Computer Programming Tools, Data Validation

  • Status: Preview

    Universidad Nacional Autónoma de México

    Skills you'll gain: Java Programming, Java, Object Oriented Programming (OOP), Object Oriented Design, Computer Programming, Programming Principles, Software Design, Data Structures, Integrated Development Environments, Debugging, Development Environment

  • Status: New

    Skills you'll gain: Software Architecture, Solution Architecture, Business Architecture, Enterprise Architecture, Microservices, Service Oriented Architecture, Software Design, Software Design Patterns, Technology Strategies, Event-Driven Programming, Serverless Computing, Digital Transformation, Scalability, Distributed Computing, Restful API, Innovation

  • Status: Free Trial

    Skills you'll gain: Software Design, Java, Java Programming, Object Oriented Programming (OOP), Data Processing, Data Analysis, Data Structures, Algorithms, Hypertext Markup Language (HTML)

  • Status: Preview

    University of Washington

    Skills you'll gain: Other Programming Languages, Software Design, Ruby (Programming Language), Programming Principles, Data Structures, Software Architecture, Computer Programming, Functional Design, Debugging

  • Status: New
    Status: Free Trial

    Skills you'll gain: Object Oriented Programming (OOP), Java, Java Programming, Maintainability, Software Design, Data Storage Technologies, Program Development, Application Development, Data Structures, File Management

What brings you to Coursera today?

Leading partners

  • Packt
  • EDUCBA
  • University of Colorado Boulder
  • Duke University
  • IBM
  • LearnQuest
  • SkillUp
  • University of Colorado System