We may earn an affiliate commission when you visit our partners.
Course image
Gregor Kiczales, Reid Holmes, Gail Murphy, and Elisa Baniassad

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.

Read more

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.

Share

Help others find MicroMasters from edX by sharing it with your friends and followers:

What's inside

Five courses

How to Code: Simple Data

(17 hours)
This programming course takes a unique approach, focusing on learning a systematic programming method rather than a programming language. This practical approach will help you channel your creativity so that you can program well in any language.

How to Code: Complex Data

(15 hours)
As your program requirements get more complex, use abstraction to capture common data and control structures. Your programs will get shorter and better tested.

Software Construction: Data Abstraction

(54 hours)
This course teaches how to build larger and more complex software systems using the Java programming language. It begins with data abstraction, from specification to implementation, and expands on these ideas to explore type hierarchies and polymorphism. By the end of the course, you will have a solid foundation in designing software in Java.

Software Construction: Object-Oriented Design

(54 hours)
This course, part of the Software Development MicroMasters program, will explore object-oriented design principles, abstraction techniques, and design patterns. You will use these techniques to build an application that uses online services and APIs.

Software Engineering: Introduction

(54 hours)
This course, part of the Software Development MicroMasters Program, introduces how teams design, build, and test multi-version software systems. You will learn software engineering principles applicable to large-scale software systems, including agile development, REST and Async programming, software specification, design, refactoring, and information security.

Learning objectives

  • 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

Save this collection

Save Software Development to your list so you can find it easily later:
Save
Our mission

OpenCourser helps millions of learners each year. People visit us to learn workspace skills, ace their exams, and nurture their curiosity.

Our extensive catalog contains over 50,000 courses and twice as many books. Browse by search, by topic, or even by career interests. We'll match you to the right resources quickly.

Find this site helpful? Tell a friend about us.

Affiliate disclosure

We're supported by our community of learners. When you purchase or subscribe to courses and programs or purchase books, we may earn a commission from our partners.

Your purchases help us maintain our catalog and keep our servers humming without ads.

Thank you for supporting OpenCourser.

© 2016 - 2024 OpenCourser