Skip to main content

Learn the design approaches to software engineering

MicroMasters® Program in
Software Development

What you will learn

  • How to develop programs that are well tested and easy to modify
  • To structure the development of large software systems using abstraction and decomposition
  • To quickly write and revise code using programming tools
  • How to do full-stack software development using an agile approach in a pair or team
  • Popular languages Java and Typescript, and the ability to quickly learn new ones

Speed is critical in software development. Successful developers are those who are able to quickly learn new technologies and new software systems, and they do this by seeing any software – in any programming language – as common repeating patterns, not just detailed lines of code.

In this MicroMasters program, you will learn this same kind of expert thinking. By working through several software development projects, you will learn specific technologies, including Java, JUnit, IntelliJ IDEA, Typescript and Node.js. But even more important, you will develop the ability to see the common structures in programs and in tools and learn how to apply these skills to master new technologies quickly.

Upon completion of this program, you will be able to write programs using a systematic approach and to design programs that are easy to maintain. You will also learn how to use agile methods in order to build software programs that solve real world problems.

With the skills obtained in this program, you will have the confidence to apply for positions that use any programming language or technology.

Expert instruction
6 graduate-level courses
Progress at your own speed
9 months
6 - 8 hours per week
Discounted price: $832.50
Pre-discounted price: $925USD
For the full program experience

Courses in this program

  1. UBCx's Software Development MicroMasters® Program

  2. 2–3 hours per week, for 7 weeks
    Learn the secret to writing well-tested and easy to improve programs, that will set you up to master any programming language
  3. 2–3 hours per week, for 6 weeks
    Learn how to design more complex programs, using new data structures, abstraction, and generative recursion.
  4. 8–10 hours per week, for 6 weeks

    Learn powerful data abstraction and decomposition techniques to build large, complex programs.

  5. 8–10 hours per week, for 6 weeks
    Learn how to design large software systems that solve real-world problems using object-oriented design techniques.
  6. 8–10 hours per week, for 6 weeks

    Learn how to apply engineering principles, such as Agile, to build a full-stack software system.

  7. 8–10 hours per week, for 6 weeks

    Apply all the skills you have learned to work through the challenging and rewarding task of designing a full-stack system.

  8. What is a MicroMasters Program?
    MicroMasters programs are a series of graduate level courses from top universities designed to advance your career. MicroMasters program certificates showcase deep learning and in-demand skills to employers and can help you get started on a path toward completing an advanced degree.

    How to Earn a MicroMasters Program Certificate
    To earn the program certificate, learners must complete and successfully earn a verified certificate in all five MicroMasters program courses, as well as the capstone project course.

    From Program Certificate to a Master’s Degree
    MicroMasters programs are designed to offer learners a pathway to an advanced degree and can count as credit toward completing a Master’s degree program. Learners who successfully earn this MicroMasters program certificate may apply for admission to a Master’s program, and if accepted, the MicroMasters program certificate will count towards the degree.

    Learners who successfully earn the MicroMasters program certificate are eligible to apply for admission to the Master of Science (Computer Science) program at Curtin University. If a learner applies for admission to the Master of Science (Computer Science) program at Curtin University, and is accepted, the MicroMasters program certificate will count towards 25% (or 100 credits of the 400 credits) of the coursework required for graduation in the Curtin program.

    Eligibility to be accepted into the Master program is subject to the Curtin University Admission Requirements being met.

    Rochester Institute of Technology (RIT) also offers a pathway to credit toward RIT's Master of Science in Professional Studies. If accepted into the program at RIT, students will be eligible for up to 9 credits which will serve toward one concentration required for this interdisciplinary degree. The MS in Professional Studies– which can be completed online or in-person – is a customized, flexible program that meets industry demand by enabling students to strategically combine multiple, complementary fields of study to reflect their unique career and educational goals.

    • Career prospects for people with similar training include software developer, software tester or any quality assurance roles.
    • The median salary for Software Development jobs in the US is $100,690 per year. (source: Bureau of Labour Statistics)
    • It is projected that 186,600 new software development jobs will need to be filled in the US alone in the next ten years. (source: Bureau of Labour Statistics)

Meet your instructors
from University of British Columbia (UBCx)

Reid Holmes
Associate Professor, Computer Science
University of British Columbia
Gail Murphy
Professor of Computer Science
University of British Columbia
Elisa Baniassad
Instructor in Computer Science
University of British Columbia
Gregor Kiczales
Professor, Computer Science
University of British Columbia

Experts from UBCx committed to teaching online learning

Program endorsements

We have hired numerous people from UBC into starting positions after they have completed these courses. The courses form a solid foundation to begin a career in software development and continue with further courses in computer science.

Geordie Henderson , VP, Software Development, Hootsuite


  • Unfortunately, learners residing in one or more of the following countries or regions will not be able to register for this course: Iran, Cuba and the Crimea region of Ukraine. While edX has sought licenses from the U.S. Office of Foreign Assets Control (OFAC) to offer our courses to learners in these countries and regions, the licenses we have received are not broad enough to allow us to offer this course in all locations. edX truly regrets that U.S. sanctions prevent us from offering all of our courses to everyone, no matter where they live.


Drive your career forward with university-backed credit programs and verified certificates


Study and demonstrate knowledge on your schedule


Try a course before you pay


Learn with university partners and peers from around the world