EdX

The Software Architect Code: Building the Digital World (edX)

The Software Architect Code: Building the Digital World (edX)

An introductory course aimed at helping you to discover and develop your software talents to succeed within the digital world. Enhance your software skills and capabilities from a software innovation perspective. Do you have a career in the software industry? Are you a founder of a technical startup or even a business executive willing to know what kind of qualified job applicants do you need to recruit? Or are you a software developer who want to unveil your skills in order to build innovative software products with added value? Join us for this 8-week course to find out.

Class Deals by MOOC List - Click here and see EdX's Active Discounts, Deals, and Promo Codes.

The world is becoming increasingly digital and software is everywhere. Every company is affected by software so having the knowledge to excel in this industry is essential. This course will introduce the skills necessary to create software, but at the same time it is crucial to understand that succeeding in a digital world requires much more than to be just a good software developer. We will explain how people from different professions can work together in order to create innovative software. We will also present the most important activities for generating effective software products and services to meet tomorrow’s demands.

What you'll learn:

  • Gain the skills needed to succeed as a software designer and software architect.
  • Understand the role of a software architect in the digital world
  • Learn the importance of capturing all essential user needs and applying the “Do it yourself” method to plan and build software pieces
  • Explore the software design and testing activities addressing the new challenges of tech-focused times
  • Understand new interaction paradigms, creativity and design methods that move the focus from the software to the humans who use it

Course Syllabus

PART I: Software Architects Talents
Go to the Renaissance to discover the Da Vinci talents and come back to the future to unveil the talents required for building a digital world.
Week 1: The Da Vinci Code
Understand the Da Vinci talents. We will show that software architects are adventurers, where imagination, optimism, courage, determinism, flexibility, the ability to predict, foresight, perseverance, continuous learning, and a desire to excel are essential ingredients.
Week 2: The Digital World Code
This week, we will travel to the future to decode the talents for working in high-creative teams and the best digital organizations in the world. We want that you understand the key elements to manage engagement, cooperation, innovation and success in a smart world lead by software.

PART 2: Envisioning Needs and Wishes
The art of understanding different prospects to classify and prioritize needs and wishes.
Week 3: Identifying needs
A holistic view of the mission and vision of a system to fulfill all essential needs and to think ahead.
Week 4: Do not reinvent the Wheel, no need!
In this week, software will be presented as an intangible asset that can be designed to be shared and reused.

PART 3: Designing & Testing
Drawing sketches and polishing their design. Looking for perfection
Week 5: Portray a Creator in the Age of Software
We will learn the process of Software Designing, with the creator as main role in the process, focusing on quality values.
Week 6: Looking for perfection
In this week, we show how the testing process is around the whole software architect work.

PART 4: Human Computer Interaction & Thinking Out of the Box
Get to know the main concepts and principles of human computer interaction, creativity and participatory methods that a modern software engineer should be familiar with.
Week 7: From software-centric to human-centric
In this week we will shift the focus from the software itself to the person who uses it and thus we will introduce the main concepts about human computer interaction that a software architect should be familiar with.
Week 8: Creativity and participatory design
We will introduce the need to combine creativity and participatory methods with software engineering practices to be able to think out of the box and imagine new applications.

Go to Class
MOOC List is learner-supported. When you buy through links on our site, we may earn an affiliate commission.

Related Courses

Data Structures and Software Design (edX) EdX
University of Pennsylvania,PennX

Data Structures and Software Design (edX)

Learn how to select, apply, and analyze the most appropriate data representations in your code and design high quality software that is easy to understand and modify. Knowing how to code is only part of the skills needed to become a professional software developer.

Self-Paced
Self-Paced
Visual Basic Programming: Classes and Collections (Coursera) Coursera
LearnQuest

Visual Basic Programming: Classes and Collections (Coursera)

This course is the third course in a series that aims to prepare you for a role working as a programmer. In this course, you will be introduced to the four main concepts in programming: Advanced String Operations and Dates, Modeling Classes, Development of Classes and Collections. Labs will allow the students to apply the material in the lectures in simple computer programs designed to re-enforce the material in the lesson.

Sep 7th 2026
4 Weeks
Quantitative Model Checking (Coursera) Coursera
EIT Digital

Quantitative Model Checking (Coursera)

The integration of ICT (information and communications technology) in different applications is rapidly increasing in e.g. Embedded and Cyber physical systems, Communication protocols and Transportation systems. Hence, their reliability and dependability increasingly depends on software. Defects can be fatal and extremely costly (with regards to mass-production of products and safety-critical systems).

Sep 7th 2026
5-12 Weeks
Mobile Application Experiences Part 2: Mobile App Design (edX) EdX
MIT,MITx

Mobile Application Experiences Part 2: Mobile App Design (edX)

Learn to create your own mobile app using methods from Mobile Human Computer Interaction (HCI). Transform your mobile app idea into a usable, tested product design. Want to create the next big app, grounded in the needs of real users? This course will teach you Human Computer Interaction (HCI) methods to better understand current behavior in a domain, and then design, develop, and deploy your own application.

No sessions available
4 Weeks
Introduction to Software, Programming, and Databases (Coursera) Coursera
IBM

Introduction to Software, Programming, and Databases (Coursera)

There are many types of software and understanding software can be overwhelming. This course aims to help you understand more about the types of software and how to manage software from an information technology (IT) perspective. This course will help you understand the basics of software, cloud computing, web browsers, development and concepts of software, programming languages, and database basics.

Sep 14th 2026
5-12 Weeks
Introdução ao Teste de Software (Coursera) Coursera
Universidade de São Paulo, Brasil

Introdução ao Teste de Software (Coursera)

A necessidade das empresas em produzir software com qualidade tem aumentado a demanda por profissionais com conhecimentos e habilidades em Teste de Software. Entretanto, existe uma escassez de mão-de-obra especializada nesta área. Considerando essa lacuna, o curso de Introdução ao Teste de Software foi planejado para servir como um guia para pessoas que necessitam de uma fonte de consulta e/ou aprendizado na área.

Sep 7th 2026
5-12 Weeks
Human-Computer Interaction I: Fundamentals & Design Principles (edX) EdX
Georgia Institute of Technology,GTx

Human-Computer Interaction I: Fundamentals & Design Principles (edX)

Learn the principles of Human-Computer Interaction to create intuitive, usable interfaces, with established design principles like feedback cycles, direct manipulation, affordances, signifiers, and more. This course takes you through the first eight lessons of CS6750: Human-Computer Interaction as taught in the Georgia Tech Online Master of Science in Computer Science program.

Self Paced
Self-Paced
Design Patterns (Coursera) Coursera
University of Alberta

Design Patterns (Coursera)

This course extends object-oriented analysis and design by incorporating design patterns to create interactive applications. Through a survey of established design patterns, learners will gain a foundation for more complex software applications. Finally, learners will identify problematic software designs by referencing a catalog of code smells. You will be challenged in the Capstone Project to redesign an existing Java-based Android application to implement a combination of design patterns. You will also critique a given Java codebase for code smells.

Sep 7th 2026
4 Weeks
Programming Reactive Systems (Scala 2 version) (Coursera) Coursera
École Polytechnique Fédérale de Lausanne

Programming Reactive Systems (Scala 2 version) (Coursera)

Reactive programming is a set of techniques for implementing scalable, resilient and responsive systems as per the Reactive Manifesto. Such systems are based on asynchronous message-passing, and their basic building-blocks are event handlers. This course teaches how to implement reactive systems in Scala and Akka by using high-level abstractions, such as actors, asynchronous computations, and reactive streams.

Sep 7th 2026
5-12 Weeks
Sensors and Sensor Circuit Design (Coursera) Coursera
University of Colorado Boulder

Sensors and Sensor Circuit Design (Coursera)

After taking this course, you will be able to: understand how to specify the proper thermal, flow, or rotary sensor for taking real-time process data; implement thermal sensors into an embedded system in both hardware and software; add the sensor and sensor interface into a microprocessor based development kit; create hardware and firmware to process sensor signals and feed data to a microprocessor for further evaluation; study sensor signal noise and apply proper hardware techniques to reduce it to acceptable levels.

Sep 7th 2026
5-12 Weeks
Software Architecture (Coursera) Coursera
University of Alberta

Software Architecture (Coursera)

The way that software components — subroutines, classes, functions, etc. — are arranged, and the interactions between them, is called architecture. In this course you will study the ways these architectures are represented, both in UML and other visual tools. We will introduce the most common architectures, their qualities, and tradeoffs. We will talk about how architectures are evaluated, what makes a good architecture, and an architecture can be improved. We'll also talk about how the architecture touches on the process of software development.

Sep 7th 2026
4 Weeks
Serviços de infraestruturas e administração de sistemas (Coursera) Coursera
Google

Serviços de infraestruturas e administração de sistemas (Coursera)

Este curso vai fazer a transição do trabalho num único computador para uma frota inteira. A administração de sistemas é o campo das TI responsável por manter sistemas de computadores fiáveis num ambiente multiutilizador. Neste curso, vai saber mais sobre os serviços de infraestruturas que mantêm todas as entidades, sejam grandes ou pequenas, a funcionar. Vamos analisar detalhadamente a nuvem para que compreenda tudo, desde configurações de infraestruturas na nuvem habituais até saber como gerir os recursos na nuvem.

Sep 7th 2026
5-12 Weeks