COVID-19 Vaccine Requirement

All UW Professional & Continuing Education students, including fully online students, must provide proof of vaccination against COVID-19 or submit a request for medical or religious exemption. 

Learn more >>

Design Patterns & System Design


Course Details

  • Location: Online
  • Duration: 9 weeks
  • Times: Evenings
  • Cost : $1,255

Next Start Date:

July 7, 2022

This course is part of a certificate program. You can also take it without enrolling in the program.

Get Details & Apply

About this Course

In software engineering, a software design pattern is a general, reusable solution to a commonly occurring problem. Not only do design patterns can make a programmer significantly more efficient, but they also provide a useful common language to conceptualize repeated problems and solutions when discussing with others or managing code in larger teams.

In this course, you’ll get an introduction to software design patterns as well as distributed and component-based architectures. You’ll learn about the highly used software design patterns such as Factory, Singleton and Adapter, which are commonly used in most software applications. You’ll also learn about distributed systems, web services as well as how and when to choose between relational and non-relational databases. By the end of the course, you’ll be familiar with several critical aspects of software architecture, such as scalability, performance, latency and security.

See Requirements

What You'll Learn

  • Ways to apply software design principles and design patterns to build components of a software application
  • How to define system architecture and concepts such as service-oriented architecture (SOA) and micro-services
  • Techniques for answering and solving common software developer job interview problems

Get Hands-On Experience 

You’ll complete a design software of a single component and then build an architecture of a larger system that includes the interactions between multiple components.

Program Overview

This course is part of the Certificate in Software Development & Design Essentials.

Learning Format

Online With Real-Time Meetings

Combine the convenience of online learning with the immediacy of real-time interaction. You’ll stream courses online and interact with your instructors and fellow students via chat, web conferencing or phone, all in real time. Learn More »

Course Sessions

Online With Real-Time Meetings



You'll earn 3 continuing education units (CEUs) for successfully completing this course. Learn more about noncredit courses.

  Stay up to date with emails featuring career tips, event invitations and program updates.       Sign Up Now