Introduction to Software Engineering (Coursera)

Offered by IBM,
Introduction to Software Engineering (Coursera)

Are you curious about the lucrative field that is software engineering and how you might be a part of it? This is the course for you! By taking this course you will gain foundational knowledge of software development, programming, and the many exciting job roles and career paths that the IT industry offers.

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

Learn about the power of the Software Development Lifecycle (SDLC), and modern software development frameworks methodologies like Agile and Scrum. Explore fundamental programming principles and foundations of design, architecture, and deployment. The course offers a number of labs that will help you get important hands-on experience. These include, getting started with an IDE, basics of programming in Python, and Hello World in 10 languages.
The field of software engineering is growing at an estimated rate of 22% according to the US Bureau of Labor and Statistics. In addition to aspiring software engineers, front-end, back-end, full stack developers and DevOps professionals, this course is also suitable for those in related careers such as Product and Project Managers, IT Managers, Information Developers, UI/UX designers and others who communicate and interact with software engineers.
You will learn about the different job opportunities and possible career paths in the software engineering field and also hear from industry professionals about what they do on a day-to-day basis.
Professionals in the software engineering field are in great demand and now is a great time to learn more about this exciting domain. Start by enrolling now!
This course is part of the following programs:

What You Will Learn

  • Describe software engineering, Software Development Lifecycle (SDLC), and software development tools, technologies and stacks.
  • List different types of programming languages and create basic programming constructs such as loops and conditions using Python.
  • Outline approaches to application architecture and design, patterns, and deployment architectures.
  • Summarize the skills required in software engineering and describe the career options it provides.

Syllabus

SDLC - The Software Development Lifecyle
This module provides you with an overview to the field of software engineering. In the first lesson of this module, you will be introduced to the field of software engineering, and learn about the software development lifecycle (SDLC), elements of building high-quality software, and writing requirements. In lesson two you will explore different approaches to building software and different career opportunities related to software development. You will also hear from experienced practitioners in the field and learn how different roles interact and work with each other as a team in order to develop enterprise-level software.

Introduction to Software Development
This module introduces you to the concepts of application development. In lesson 1 you’ll learn about the differences in front-end and back-end development in web and cloud applications and the technologies used in both. You’ll also learn about how working in teams and pairs can enhance the development process and make it more efficient. In lesson 2 you will explore many of the application development tools that a software engineer uses to write, test, and release code and be introduced to software stacks that support the execution of an application. Finally, in the hands-on lab, you’ll learn how to use an integrated development environment (IDE) to develop and run code.

Basics of Programming
This module introduces you to the basics of programming. In the first lesson, you will learn about the different categories of programming languages and the scenarios to which each is suited. You’ll also learn how to plan and organize your code effectively. In lesson 2 you will explore basic programming logic and investigate programming concepts such as identifiers, functions, and objects. Finally, in the hands-on lab, you’ll learn how to write simple Python code.

Software Architecture, Design, and Patterns
In this module, you will learn about the foundations of enterprise software development. Lesson 1 introduces you to software architecture and explains the importance of well-designed architecture. You will also learn about the design process, including structural design, behavioral models, and how you can create unified modeling language (UML) diagrams to communicate a software’s structure and behavior to all team members. You will also consider object-oriented analysis and design (OOAD). In Lesson 2 you will explore a variety of architectural patterns that support the architectural design process in a hands-on activity. Lastly, you will learn about the software production environment and some of the components required for deployment.

Job Opportunities and Skillsets in Software Engineering
In this module, you will learn about the tasks of a software engineer and what they do on a day-to-day basis. You will discover the hard and soft skills needed to become a successful software engineer. You will also investigate the job outlook for a software engineer, get a clear understanding of different software engineering career paths, and learn about various software engineering job titles and the responsibilities of those roles. You will also learn about the software engineering code of ethics.

Final Activity and Quiz
This is the final module of the course which contains the final assessment and final project. Both the assessment and the project address topics from all other modules in the course. The final assessment contains a total of 20 multiple choice questions comprised of 4 questions about each module. For the 20-point, peer-reviewed, final project, you will analyze a job posting in light of what you learned in the course. You are also required to review two of your peers’ projects based on the rubric provided.

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

Related Courses

Learn CSS Flexbox (Coursera) Coursera
Scrimba

Learn CSS Flexbox (Coursera)

Mastering CSS Flexbox: Unlock the Power of Flexible Web Layouts. Discover the indispensable art of CSS Flexbox and elevate your web development prowess to new heights. In this comprehensive course, you'll gain proficiency in harnessing the unparalleled capabilities of Flexbox, revolutionizing the way you construct websites.

Aug 3rd 2026
1 Week
Avatar Psychology for Designers (Coursera) Coursera
Michigan State University

Avatar Psychology for Designers (Coursera)

This course covers the latest and greatest psychological research on avatars and is relevant to current and future designers of any medium that includes user self-representations (e.g., video games, virtual worlds, robots, automobiles, social media, etc.). By taking this course, you will be able to define digital and non-digital avatars and identify how they are applicable in everyday life.

Aug 3rd 2026
4 Weeks
Applied Calculus with Python (Coursera) Coursera
Johns Hopkins University

Applied Calculus with Python (Coursera)

This course is designed for the Python programmer who wants to develop the foundations of Calculus to help solve challenging problems as well as the student of mathematics looking to learn the theory and numerical techniques of applied calculus implemented in Python. By the end of this course, you will have learned how to apply essential calculus concepts to develop robust Python applications that solve a variety of real-world challenges.

Aug 3rd 2026
5-12 Weeks
Inspiring Peak Performance on Technical Teams (Coursera) Coursera
Advancing Women in Tech

Inspiring Peak Performance on Technical Teams (Coursera)

In the previous course, Leadership Principles for Software Engineers, you learned about how to hire your team and set its goals. Now, learn how to lead each individual team member, increasing their personal best performance, and your team's overall performance, day after day. NANCY WANG, Director of Engineering and General Manager of AWS Data Protection Services and Founder, Advancing Women in Tech (AWIT), shares with you the engineering management skills cultivated at AMAZON (the #2-ranked company in the Fortune 500), with supplemental practices from GOOGLE and MICROSOFT. Develop the skills and mental models that the world's best engineering managers apply to turn their new hires into world-class engineers.

Aug 3rd 2026
3 Weeks
Programming for Everybody (Getting Started with Python) (Coursera) Coursera
University of Michigan

Programming for Everybody (Getting Started with Python) (Coursera)

This course aims to teach everyone the basics of programming computers using Python. We cover the basics of how one constructs a program from a series of simple instructions in Python. The course has no pre-requisites and avoids all but the simplest mathematics. Anyone with moderate computer experience should be able to master the materials in this course.

Jul 27th 2026
5-12 Weeks
Agile with Atlassian Jira (Coursera) Coursera
Atlassian

Agile with Atlassian Jira (Coursera)

Agile teams use “just enough” planning and an incremental approach to accomplishing the work of the team. Every project and every team uses a custom agile methodology. This course discusses common foundational principles and practices used by agile methodologies, providing the student a flexible set of tools to use in any role (e.g. product owner, scrum master, project manager, team member) on any agile team.

Aug 3rd 2026
4 Weeks
Programando con Java para aplicaciones Android (Coursera) Coursera
Universidad Nacional Autónoma de México

Programando con Java para aplicaciones Android (Coursera)

¡Aprende lo mejor de Java para el desarrollo en Android! Descubre lo necesario para construir tus aplicaciones móviles de una forma sencilla, objetiva y práctica. A lo largo del curso, verás diversos ejemplos para crear tu primer Hola Mundo y practicarás la programación orientada a objetos.

Jul 27th 2026
3 Weeks
Leadership Principles for Software Engineers (Coursera) Coursera
Advancing Women in Tech

Leadership Principles for Software Engineers (Coursera)

Learn real-world software engineering management skills to succeed and impress in your first (or next) management role at elite engineering organizations. NANCY WANG, Director of Engineering and General Manager of AWS Data Protection Services and Founder, Advancing Women in Tech (AWIT), shares with you the engineering skills cultivated at AMAZON (the #2-ranked company in the Fortune 500), with supplemental practices from GOOGLE and MICROSOFT. Develop the skills and mental models that the world's best engineering managers apply to attract and retain world-class engineering talent.

Aug 2nd 2026
3 Weeks
Open Source Programming - Bachelor's (Coursera) Coursera
Illinois Tech

Open Source Programming - Bachelor's (Coursera)

Contemporary open-source programming languages and frameworks are presented in this course. Students will consider design and development topics in system, graphical user interface, network, and web programming. Dynamic scripting languages are covered using object-oriented, concurrent, and functional programming paradigms. Concepts gained throughout the course are reinforced with numerous exercises which will culminate in an open-source programming project.

Aug 3rd 2026
5-12 Weeks
Learn CSS Variables (Coursera) Coursera
Scrimba

Learn CSS Variables (Coursera)

CSS Custom Properties represent a significant advancement for front-end developers, introducing the concept of variables to CSS. This innovation substantially reduces redundancy, enhances code legibility, and augments overall flexibility. Notably, CSS Variables distinguish themselves from their CSS preprocessor counterparts by seamlessly integrating into the Document Object Model (DOM), offering a plethora of advantages.

Aug 3rd 2026
1 Week