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


Software Engineering Basics for Everyone

IBM via edX


The demand for software engineers doubled according to the “State of Software Engineers” report by the tech specialist Hired. Nearly every industry uses software to accelerate its growth, providing a vast number of opportunities. With the importance of software engineers and the technical skillset required, it isn’t surprising that according to, “The good starting software engineer salary in the US is considered to be $113,211 per year. Competitive starting salaries will vary depending on location and cost of living.”

This course is suitable for anyone wanting to start in a software development related role, including those aspiring to be Software Engineers, IT Product and Project Managers, Scrum Masters, Information Developers, UI/UX Designers, QA Engineers, as well as Sales Executives, and Marketing Managers in the Tech industry. No prior programming experience or degree is required.

This course teaches you about the power of the Software Development Lifecycle (SDLC) and software development methodologies such as Agile. You will explore fundamental programming principles and foundations of design, architecture, and deployment, investigate skills that a software engineer needs and identify job opportunities with hands-on projects. You will also learn about programming basics and software development tools and stacks.

Throughout this course, you’ll hear first-hand experiences from expert software engineers to geta feel for the job and their perspectives. After completing this introductory course, you will be familiar with the software engineering tools, technologies, terminology, processes, and practices.


Module 1: SDLC – The Software Development Lifecycle

  • What is Software Engineering?

  • Insiders’ Viewpoint: What is software engineering?

  • Introduction to the SDLC

  • Activity: Phases in the SDLC

  • Building Quality Software

  • Requirements

  • Software Development Methodologies

  • Software Versions

  • Software Testing

  • Software Documentation

  • Roles in Software Engineering Projects

  • Insiders’ Viewpoint: Job Roles in Software Engineering Teams

Module 2: Introduction to Software Development

  • Overview of the Web and Cloud Development

  • Learning Front-End Development

  • The Importance of Back-End Development

  • Teamwork and Squads

  • Insiders’ Viewpoint: Teamwork in Software Engineering

  • Pair Programming

  • Insiders’ Viewpoint: Pair Programming

  • Activity: Categorizing Front-end and Back-end Technologies

  • Introducing Application Development Tools

  • More Application Development Tools

  • Introduction to Software Stacks

  • Hands-on Lab: Getting Started With an IDE

  • Insiders’ Viewpoint: Tools and Technologies

Module 3: Basics of Programming

  • Interpreted and Compiled Programming Languages

  • Comparing Compiled and Interpreted Programming Languages

  • Query and Assembly Programming Languages

  • Understanding Code Organization Methods

  • Insiders’ Viewpoint: Types of languages

  • Activity: Programming Logic and Organizational Methods

  • Branching and Looping Programming Logic

  • Introduction to Programming Concepts Part 1, Part 2

  • Hands-on Lab: Programming Fundamentals with Python

Module 4: Software Architecture, Design, and Patterns

  • Introduction to Software Architecture

  • Software Design and Modeling

  • Object-Oriented Analysis and Design

  • Insiders’ Viewpoint: Importance of Design and Software Architecture

  • Activity: Create an Architectural Diagram

  • Approaches to Application Architecture

  • Architectural Patterns in Software

  • Application Deployment Environments

  • Production Deployment Components

  • Insiders’ Viewpoint: Deployment Architecture

Module 5: Job Opportunities and Skillsets in Software Engineering

  • What Does a Software Engineer Do?

  • A Day in the Life of a Software Engineer

  • Skills Required for Software Engineering

  • Insiders’ Viewpoint: Advice to Future Software Engineers

  • Insiders’ Viewpoint: Women in Software Engineering

  • Job Outlook for Software Engineers

  • Career Paths in Software Engineering

  • Software Engineering Job Titles

  • Insiders’ Viewpoint: Career Paths

  • Activity: Matching Roles with Responsibilities

  • Software Engineering Code of Ethics

Module 6: Final Quiz

Taught by

Rav Ahuja and Lin Joyner


4.6 rating at edX based on 69 ratings

Start your review of Software Engineering Basics for Everyone

Never Stop Learning.

Get personalized course recommendations, track subjects and courses with reminders, and more.

Someone learning on their laptop while sitting on the floor.