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: New
    Status: Free Trial

    University of Colorado Boulder

    Skills you'll gain: Object Oriented Design, JUnit, Object Oriented Programming (OOP), Unified Modeling Language, Software Design Patterns, Software Testing, Software Engineering, Java, Java Programming, Application Design, User Interface and User Experience (UI/UX) Design, Unit Testing, Software Design, Software Architecture, API Design, Model View Controller, Program Development, Software Development, Test Driven Development (TDD), Databases

  • Status: Free Trial

    Skills you'll gain: Software Development Life Cycle, Software Architecture, Linux Commands, Bash (Scripting Language), Shell Script, Git (Version Control System), GitHub, Flask (Web Framework), Software Design, Unit Testing, Version Control, File Management, Scrum (Software Development), Software Engineering, Linux, Application Deployment, Data Import/Export, Programming Principles, Web Scraping, Python Programming

  • Status: Free Trial

    Skills you'll gain: Prompt Engineering, Large Language Modeling, Database Design, LLM Application, Software Documentation, Software Design Patterns, Databases, Test Automation, Collaborative Software, Software Testing, Application Design, Technical Documentation, Generative AI, Database Management, Software Design, Code Review, Software Architecture, Software Engineering, Software Development, Machine Learning

  • Status: Free Trial

    École Polytechnique Fédérale de Lausanne

    Skills you'll gain: Scala Programming, Apache Spark, Apache Hadoop, User Interface (UI), Programming Principles, Big Data, Software Design, Data Structures, Software Design Patterns, Functional Design, Data Manipulation, Object Oriented Programming (OOP), Heat Maps, Data Visualization Software, Interactive Data Visualization, Distributed Computing, Computer Programming, Data Processing, Real Time Data, Performance Tuning

  • 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: 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
    Status: AI skills

    Skills you'll gain: React Native, Prompt Engineering, Software Development Life Cycle, Flutter (Software), Software Architecture, Swift Programming, Mobile Development, Apple Xcode, Android Studio, Android Development, React Redux, Apple iOS, Responsive Web Design, Git (Version Control System), GitHub, Software Design, Android (Operating System), Cascading Style Sheets (CSS), User Experience Design, AI Personalization

  • Status: Free Trial

    Skills you'll gain: User Story, Software Development Life Cycle, Software Architecture, Sprint Retrospectives, Agile Software Development, Kanban Principles, DevOps, Backlogs, Software Design, Sprint Planning, Scrum (Software Development), Information Technology, Software Engineering, Computer Hardware, Agile Methodology, Agile Project Management, Team Building, Risk Management, Leadership, Communication

  • Status: New
    Status: Free Trial

    Skills you'll gain: Prompt Engineering, Anthropic Claude, Multimodal Prompts, Version Control, Generative AI Agents, Git (Version Control System), Generative AI, Software Quality Assurance, Software Development, Mockups, Test Automation, Software Documentation, Artificial Intelligence, Software Development Life Cycle, Software Architecture, Automation, Software Testing, Software Design, Software Development Methodologies

  • Status: Free Trial
    Status: AI skills

    Skills you'll gain: Prompt Engineering, Cloud-Native Computing, Software Development Life Cycle, Software Architecture, Hibernate (Java), Database Design, Responsive Web Design, Docker (Software), Containerization, Git (Version Control System), GitHub, Object Oriented Programming (OOP), Microservices, CI/CD, Restful API, Java Programming, Engineering Software, Version Control, Database Management, Software Design

  • Status: New
    Status: Free Trial

    Skills you'll gain: API Design, Prompt Engineering, Generative AI, ChatGPT, Microsoft Copilot, Software Architecture, Code Review, Unit Testing, LLM Application, Software Design, Database Design, Debugging, Software Development, Application Development, Application Design, Python Programming, Application Performance Management, Automation, Version Control, Java Programming

  • Status: Free Trial

    LearnQuest

    Skills you'll gain: Java Programming, Spring Framework, Java, Eclipse (Software), Object Oriented Programming (OOP), Object Oriented Design, Integrated Development Environments, Development Environment, Java Platform Enterprise Edition (J2EE), Software Design, Software Installation, Computer Programming, Programming Principles, Program Development, Virtual Machines, Web Development, Debugging, Package and Software Management, 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