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

Basic Modeling for Discrete Optimization (Coursera) Coursera
University of Melbourne,The Chinese University of Hong Kong

Basic Modeling for Discrete Optimization (Coursera)

Optimization is a common form of decision making, and is ubiquitous in our society. Its applications range from solving Sudoku puzzles to arranging seating in a wedding banquet. The same technology can schedule planes and their crews, coordinate the production of steel, and organize the transportation of iron ore from the mines to the ports. Good decisions in manpower and material resources management also allow corporations to improve profit by millions of dollars.

Aug 17th 2026
4 Weeks
Software Design Methods and Tools (Coursera) Coursera
University of Colorado System

Software Design Methods and Tools (Coursera)

Since many software developers are compulsive coders, they have created software over the years to help them do their job. There are tools which make design and its associated tasks easier. The course introduces some basic tools and techniques to help you with design. Tools aren’t always tangible, however. The last two lessons of this course discuss questions of Ethics in software development. The purpose here is, as with tools, to equip you to better carry our your responsibilities as a designer. Students will be required to have a prior knowledge of writing and delivering software and some programming knowledge in java.

Aug 3rd 2026
5-12 Weeks
Human-Computer Interaction II: Cognition, Context & Culture (edX) EdX
Georgia Institute of Technology,GTx

Human-Computer Interaction II: Cognition, Context & Culture (edX)

Get into the user’s mind and understand the role of mental models and representations, then investigate how to design interfaces that integrate with and influence the world around us. This course takes you through lessons 9 through 13 of CS6750: Human-Computer Interaction as taught in the Georgia Tech Online Master of Science in Computer Science program.

Self Paced
Self-Paced
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
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.

Aug 17th 2026
5-12 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.

Aug 10th 2026
5-12 Weeks
Software Development Processes and Methodologies (Coursera) Coursera
University of Minnesota

Software Development Processes and Methodologies (Coursera)

Software is quickly becoming integral part of human life as we see more and more automation and technical advancements. Just like we expect car to work all the time and can't afford to break or reboot unexpectedly, software industry needs to continue to learn better way to build software if it were to become integral part of human life.

Aug 3rd 2026
4 Weeks
面向对象技术高级课程 (The Advanced Object-Oriented Technology) (Coursera) Coursera
Peking University

面向对象技术高级课程 (The Advanced Object-Oriented Technology) (Coursera)

如果将软件开发人员看作行走江湖的武侠,那么各种软件开发技术就是武侠赖以傍身的武术秘籍。有的秘籍以易学灵巧见长,练习者很快掌握,并有立竿见影的功效,但失之厚重持久;有的秘籍初学乍练顿显困难,虽冥思苦解仍不得要领,需坚持不断的内功修炼方成正果,却是成为武林大侠必备的至宝。本课程有些类似于后者。

Aug 17th 2026
13-24 Weeks
Human-Computer Interaction IV: Evaluation, Agile Methods & Beyond (edX) EdX
Georgia Institute of Technology,GTx

Human-Computer Interaction IV: Evaluation, Agile Methods & Beyond (edX)

Complete your understand of the design life cycle by learning to take interface ideas, prototype them quickly, and evaluate them with real users. Finally, tie principles and methods together and learn the next steps you could take in HCI. This course takes you through the last nine lessons of CS6750: Human-Computer Interaction as taught in the Georgia Tech Online Master of Science in Computer Science program.

Self Paced
Self-Paced
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
Agile Software Development (Coursera) Coursera
University of Minnesota

Agile Software Development (Coursera)

Software industry is going crazy on agile methods. It is rapidly becoming the choice for software development where requirements are unpredictable or is expected to change over time. This course will help you gain knowledge on what is agile? Why agile is better suited for these situations? We will also cover some of the most common agile frameworks like scrum and XP in depth.

Aug 3rd 2026
4 Weeks