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

  • Status: Free Trial

    Skills you'll gain: Unified Modeling Language, Software Design, Image Analysis, Python Programming, Jupyter, Software Engineering, Application Programming Interface (API), Object Oriented Programming (OOP), Computer Vision, Integrated Development Environments, Computer Programming

  • Status: Preview

    Skills you'll gain: Internet Of Things, Wireless Networks, Software Design, Application Design, Emerging Technologies, System Design and Implementation, General Networking, Cloud Applications, Systems Architecture, Hardware Architecture, Data Security, User Centered Design, Prototyping, Information Privacy, Open Source Technology, Scalability

  • Skills you'll gain: Systems Analysis, Communication Systems, Verification And Validation, Systems Design, Data Modeling, Programming Principles, Software Design, Software Architecture, Network Protocols, Algorithms

  • Instituto Tecnológico de Aeronáutica

    Skills you'll gain: JUnit, Object Oriented Programming (OOP), Java, Java Programming, Object Oriented Design, Unified Modeling Language, Unit Testing, Software Engineering, Agile Software Development, Software Design, Software Development, Programming Principles, Eclipse (Software)

  • Status: Preview

    Skills you'll gain: Android Studio, Android Development, Storyboarding, Application Design, Mobile Development, Application Development, Java, User Interface (UI) Design, Software Design, Interactive Design, Development Environment, Software Installation, User Centered Design

  • Status: Free Trial

    University of Colorado System

    Skills you'll gain: Unity Engine, Debugging, Object Oriented Programming (OOP), Video Game Development, C# (Programming Language), Game Design, Software Design Patterns, Computer Programming, Data Management, Event-Driven Programming, Data Structures, Application Design, Computational Thinking, Data Storage, Application Development, Software Design, Programming Principles, Program Development, UI Components, Scripting

  • 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: Free Trial

    University of California, Irvine

    Skills you'll gain: Go (Programming Language), Object Oriented Programming (OOP), Algorithms, JSON, Programming Principles, OS Process Management, Functional Design, Data Structures, System Programming, Development Environment, Software Design, Remote Access Systems, Operating Systems, File Management, Program Development, Software Development Tools, Debugging, Computer Architecture

  • 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: 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

What brings you to Coursera today?

Leading partners

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