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,280

Next Start Date:

July 11, 2023

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. This course aims to arm students with the software design skills required to produce real-world, extensible, performant and scalable software systems.  

Starting with an introduction to code design patterns such as Factory, Singleton and Adapter, this course exposes students to the SOLID design principles used to build extensible designs efficiently. We’ll explore common system design components such as databases, caching and different kinds of architectural patterns, and then dive deeper into the techniques used to scale software systems like database sharding, distributed transactions, load balancing and asynchronous communication. By the end of the course, you’ll be familiar with the critical aspects of software architecture. 

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
  • Techniques for answering and solving common system design interview problems
  • Experience with the latest specialized design paradigms
  • How and when to choose between relational and non-relational databases 

Get Hands-On Experience 

You'll design an individual software component and then build the 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


Meet your instructor

Pawan Gupta

Software Development Manager, Amazon Ads


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

  Get our email newsletter with career tips, event invites and upcoming program info.       Sign Up Now