• For Individuals
  • For Businesses
  • For Universities
  • For Governments
Coursera
Log In
Join for Free
Coursera
IBM
Introduction to Software Engineering
  • About
  • Outcomes
  • Modules
  • Recommendations
  • Testimonials
  • Reviews
  1. Browse
  2. Computer Science
  3. Software Development
IBM

Introduction to Software Engineering

This course is part of multiple programs.

This course is part of multiple programs

IBM IT Project Manager Professional Certificate
IBM Front-End Developer Professional Certificate
IBM Back-end JavaScript Developer Professional Certificate
IBM iOS and Android Mobile App Developer Professional Certificate
IBM Back-End Development Professional Certificate
IBM Full-Stack JavaScript Developer Professional Certificate
IBM Full Stack Software Developer Professional Certificate
IBM DevOps and Software Engineering Professional Certificate
IBM Java Developer Professional Certificate
IBM AI Developer Professional Certificate
Applied Software Engineering Fundamentals Specialization
IBM IT Scrum Master Professional Certificate
Rav Ahuja
Bethany Hudnutt

Instructors: Rav Ahuja

Instructors

Instructor ratings

We asked all learners to give feedback on our instructors based on the quality of their teaching style.

4.7 (977 ratings)
Rav Ahuja
Rav Ahuja
IBM
57 Courses•3,968,052 learners
Bethany Hudnutt
Bethany Hudnutt
IBM
3 Courses•404,267 learners

290,551 already enrolled

Included with Coursera Plus

•Learn more
6 modules
Gain insight into a topic and learn the fundamentals.
4.7

(3,609 reviews)

Beginner level

Recommended experience

Recommended experience

Beginner level

Basic computer literacy.

Flexible schedule
Approx. 14 hours
Learn at your own pace
97%
Most learners liked this course

6 modules
Gain insight into a topic and learn the fundamentals.
4.7

(3,609 reviews)

Beginner level

Recommended experience

Recommended experience

Beginner level

Basic computer literacy.

Flexible schedule
Approx. 14 hours
Learn at your own pace
97%
Most learners liked this course
  • About
  • Outcomes
  • Modules
  • Recommendations
  • Testimonials
  • Reviews

What you'll learn

  • Explain the principles of software engineering, the Software Development Life Cycle (SDLC), and software development tools, technologies, and stacks

  • Differentiate between programming language types and apply basic programming constructs such as loops, conditionals, and functions using Python

  • Summarize key software architecture and design approaches, including common architectural and deployment patterns

  • Outline the roles, skills, and career paths in software engineering

Skills you'll gain

  • Web Development
  • Scrum (Software Development)
  • Agile Methodology
  • Software Development
  • Software Design Patterns
  • Programming Principles
  • Integrated Development Environments
  • Cloud Development
  • Computer Programming
  • Python Programming
  • Back-End Web Development
  • Software Development Life Cycle
  • Software Architecture
  • Application Development
  • Software Engineering
  • Front-End Web Development
  • Software Design

Details to know

Shareable certificate

Add to your LinkedIn profile

Assessments

16 assignments

Taught in English

See how employees at top companies are mastering in-demand skills

Learn more about Coursera for Business
 logos of Petrobras, TATA, Danone, Capgemini, P&G and L'Oreal

Build your subject-matter expertise

This course is available as part of
When you enroll in this course, you'll also be asked to select a specific program.
  • Learn new concepts from industry experts
  • Gain a foundational understanding of a subject or tool
  • Develop job-relevant skills with hands-on projects
  • Earn a shareable career certificate

There are 6 modules in this course

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.

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, the 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 software engineering and hear from industry professionals about their daily work. Software engineering professionals are in great demand, and now is the right time to learn more about this exciting domain. Start by enrolling now!

In this module, you’ll explore the fundamentals of software engineering and what sets it apart from software development. You’ll learn how software engineering roles contribute to building reliable, high-quality systems, and how the Software Development Life Cycle (SDLC) helps structure and streamline projects. You’ll break down each phase of the SDLC, examine how requirements are gathered and documented, and compare key specification documents such as the User Requirement Specification (URS), Software Requirement Specification (SRS), and System Requirement Specification (SysRS). You’ll also evaluate different development models, including Waterfall, the V-model, and Agile, and determine when to use each. As you progress, you’ll become familiar with software versioning, various types of software testing, and the documentation needed throughout the development process. Finally, you’ll identify common roles in software engineering projects.

What's included

14 videos1 reading3 assignments1 plugin

14 videos•Total 81 minutes
  • Course Introduction•3 minutes•Preview module
  • Meet the Experts•4 minutes
  • What Is Software Engineering?•5 minutes
  • Insiders' Viewpoint: What Is Software Engineering?•5 minutes
  • Introduction to the SDLC•3 minutes
  • Phases of the SDLC•6 minutes
  • Building Quality Software•6 minutes
  • Requirements•6 minutes
  • Software Development Methodologies•7 minutes
  • Software Versions•4 minutes
  • Software Testing•7 minutes
  • Software Documentation•5 minutes
  • Roles in Software Engineering Projects•5 minutes
  • Insiders' Viewpoint: Job Roles in Software Engineering Teams•7 minutes
1 reading•Total 10 minutes
  • Summary & Highlights•10 minutes
3 assignments•Total 50 minutes
  • Overview of Software Engineering •10 minutes
  • The Software Building Process and Associated Roles•10 minutes
  • Graded Quiz: The Software Development Lifecycle•30 minutes
1 plugin•Total 15 minutes
  • Activity: Phases in the SDLC•15 minutes

In this module, you will explore the foundational roles of front-end, back-end, and full-stack development in building web and cloud applications. You’ll learn how HTML, CSS, and JavaScript create interactive user interfaces, while server-side operations handle data and support functionality. The module also introduces collaborative development practices such as squads and pair programming. Additionally, you will learn to classify technologies within software architectures, examine key development tools, and gain hands-on experience using an Integrated Development Environment (IDE) to write and execute code.

What's included

11 videos1 reading3 assignments1 app item1 plugin

11 videos•Total 60 minutes
  • Overview of Web and Cloud Development•4 minutes•Preview module
  • Learning Front-End Development•6 minutes
  • The Importance of Back-End Development•6 minutes
  • Teamwork and Squads•5 minutes
  • Insiders' Viewpoint: Teamwork in Software Engineering•3 minutes
  • Pair Programming•4 minutes
  • Insiders' Viewpoint: Pair Programming•4 minutes
  • Introducing Application Development Tools•5 minutes
  • More Application Development Tools•5 minutes
  • Introduction to Software Stacks•7 minutes
  • Insiders' Viewpoint: Tools and Technologies•6 minutes
1 reading•Total 10 minutes
  • Summary & Highlights•10 minutes
3 assignments•Total 50 minutes
  • Introduction to Development •10 minutes
  • Tools in Software Development •10 minutes
  • Graded Quiz: Introduction to Software Development •30 minutes
1 app item•Total 60 minutes
  • Hands-on Lab: Getting Started With an IDE•60 minutes
1 plugin•Total 15 minutes
  • Activity: Categorizing Front- and Back-End Technologies•15 minutes

In this module, you will examine different types of programming languages, including compiled, interpreted, query, and assembly languages, and evaluate their use in various development scenarios. You’ll explore core programming constructs such as variables, control flow, loops, and functions, while learning how to organize code using procedural, modular, and object-oriented approaches. In addition, through hands-on practice, you’ll compare language syntax by writing basic programs in multiple languages. You’ll also use Python to implement programming fundamentals. The module also emphasizes selecting appropriate languages and structures based on performance, portability, and debugging needs.

What's included

8 videos1 reading3 assignments2 app items1 plugin

8 videos•Total 49 minutes
  • Interpreted and Compiled Programming Languages•5 minutes•Preview module
  • Comparing Compiled and Interpreted Programming Languages•6 minutes
  • Query and Assembly Programming Languages•7 minutes
  • Understanding Code Organization Methods•7 minutes
  • Insiders' Viewpoint: Types of Languages•5 minutes
  • Branching and Looping Programming Logic•5 minutes
  • Introduction to Programming Concepts Part 1•6 minutes
  • Introduction to Programming Concepts Part 2•4 minutes
1 reading•Total 10 minutes
  • Summary & Highlights•10 minutes
3 assignments•Total 50 minutes
  • Programming Languages and Organization•10 minutes
  • Introduction to Programming Concepts•10 minutes
  • Graded Quiz: Basics of Programming•30 minutes
2 app items•Total 40 minutes
  • Hands-on Lab: Hello World in 11 Programming Languages•15 minutes
  • Hands-on Lab: Programming Fundamentals with Python•25 minutes
1 plugin•Total 15 minutes
  • Activity: Programming Logic and Organizational Methods•15 minutes

In this module, you will explore the role of software architecture in managing system complexity and supporting quality attributes such as scalability, reliability, and maintainability. You’ll learn to apply object-oriented analysis and design principles, use modeling tools like UML to visualize system structure and behavior, and create architectural diagrams to represent component interactions. The module also introduces common architectural patterns, such as layered, client-server, and microkernel, and compares application architecture approaches like monolithic, microservices, and serverless. Additionally, you will examine the characteristics of different deployment environments and identify key components required for reliable production deployment.

What's included

9 videos1 reading3 assignments1 plugin

9 videos•Total 51 minutes
  • Introduction to Software Architecture•5 minutes•Preview module
  • Software Design and Modeling•6 minutes
  • Object-Oriented Analysis and Design•4 minutes
  • Insiders' Viewpoint: Importance of Design and Software Architecture•5 minutes
  • Approaches to Application Architecture•6 minutes
  • Architectural Patterns in Software•7 minutes
  • Application Deployment Environments•5 minutes
  • Production Deployment Components•5 minutes
  • Insiders' Viewpoint: Deployment Architecture•3 minutes
1 reading•Total 3 minutes
  • Summary & Highlights•3 minutes
3 assignments•Total 50 minutes
  • Software Architecture and Design•10 minutes
  • Software Architecture Patterns and Deployment Topologies •10 minutes
  • Graded Quiz: Software Architecture, Design, and Deployment Topologies•30 minutes
1 plugin•Total 15 minutes
  • Activity: Create an Architectural Diagram•15 minutes

In this module, you will explore the diverse roles, responsibilities, and career paths within the field of software engineering. You’ll learn to differentiate between software engineers and developers, analyze typical workdays, and identify the key technical and soft skills needed for success. The module examines current job market trends and growth prospects, outlines various job titles and responsibilities, and helps you map roles to real-world project contexts. You’ll also consider professional ethics in software engineering, applying established codes of conduct to real-life scenarios.

What's included

10 videos1 reading3 assignments1 plugin

10 videos•Total 56 minutes
  • What Does a Software Engineer Do?•4 minutes•Preview module
  • A Day in the Life of a Software Engineer•3 minutes
  • Skills Required for Software Engineering•7 minutes
  • Insiders' Viewpoint: Advice to Future Software Engineers•4 minutes
  • Insiders' Viewpoint: Women in Software Engineering•4 minutes
  • Job Outlook for Software Engineers•6 minutes
  • Career Paths in Software Engineering•6 minutes
  • Software Engineering Job Titles•6 minutes
  • Insiders' Viewpoint: Career Paths•6 minutes
  • Code of Ethics•5 minutes
1 reading•Total 10 minutes
  • Summary & Highlights•10 minutes
3 assignments•Total 43 minutes
  • About Software Engineers•1 minute
  • Careers in Software Engineering•12 minutes
  • Graded Quiz: Job Opportunities and Skillsets in Software Engineering•30 minutes
1 plugin•Total 15 minutes
  • Activity: Matching Roles with Responsibilities•15 minutes

The final module of this course includes both the final, graded assessment and a project. The assessment consists of 20 multiple-choice questions. For the final project, you will apply what you’ve learned by analyzing a real-world job posting and demonstrating your ability to connect course concepts to practical career opportunities.

What's included

2 readings1 assignment1 app item1 plugin

2 readings•Total 4 minutes
  • Congrats & Next Steps•2 minutes
  • Thanks from the Course Team•2 minutes
1 assignment•Total 60 minutes
  • Graded Quiz: Final Quiz•60 minutes
1 app item•Total 30 minutes
  • Final Project Submission and Evaluation•30 minutes
1 plugin•Total 15 minutes
  • Software Engineering Glossary•15 minutes

Earn a career certificate

Add this credential to your LinkedIn profile, resume, or CV. Share it on social media and in your performance review.

Instructors

Instructor ratings

Instructor ratings

We asked all learners to give feedback on our instructors based on the quality of their teaching style.

4.7 (977 ratings)
Rav Ahuja
Rav Ahuja
IBM
57 Courses•3,968,052 learners
Bethany Hudnutt
Bethany Hudnutt
IBM
3 Courses•404,267 learners

Offered by

IBM

Offered by

IBM

At IBM, we know how rapidly tech evolves and recognize the crucial need for businesses and professionals to build job-ready, hands-on skills quickly. As a market-leading tech innovator, we’re committed to helping you thrive in this dynamic landscape. Through IBM Skills Network, our expertly designed training programs in AI, software development, cybersecurity, data science, business management, and more, provide the essential skills you need to secure your first job, advance your career, or drive business success. Whether you’re upskilling yourself or your team, our courses, Specializations, and Professional Certificates build the technical expertise that ensures you, and your organization, excel in a competitive world.

Explore more from Software Development

  • Status: Free Trial
    Free Trial
    I

    IBM

    Software Developer Career Guide and Interview Preparation

    Course

  • Status: Free Trial
    Free Trial
    A

    Amazon

    Introduction to Software Development

    Course

  • Status: Free Trial
    Free Trial
    I

    IBM

    Applied Software Engineering Fundamentals

    Specialization

  • Status: Free Trial
    Free Trial
    N

    Northeastern University

    Introduction to Software Development and Applications

    Course

Why people choose Coursera for their career

Felipe M.
Learner since 2018
"To be able to take courses at my own pace and rhythm has been an amazing experience. I can learn whenever it fits my schedule and mood."
Jennifer J.
Learner since 2020
"I directly applied the concepts and skills I learned from my courses to an exciting new project at work."
Larry W.
Learner since 2021
"When I need courses on topics that my university doesn't offer, Coursera is one of the best places to go."
Chaitanya A.
"Learning isn't just about being better at your job: it's so much more than that. Coursera allows me to learn without limits."

Learner reviews

4.7

3,609 reviews

  • 5 stars

    77.24%

  • 4 stars

    17.63%

  • 3 stars

    3.01%

  • 2 stars

    0.91%

  • 1 star

    1.18%

Showing 3 of 3609

H
HT
4

Reviewed on Dec 9, 2023

Pauses are needed when transitioning to different topics.. at times I guess we students get confused when does a sub topic start within the video and when does it end

S
SA
5

Reviewed on May 20, 2024

This fantastic course provides the foundation and knowledge of different technical roles, methodologies, frameworks, jobs to consider, and advice from SMEs on this career journey.

D
DP
5

Reviewed on Apr 23, 2023

Great course for anyone wanting to get into Software Engineering, or a great refresher for those who have SE experience but need to fill in any gaps they may have. Highly recommended!

View more reviews
Coursera Plus

Open new doors with Coursera Plus

Unlimited access to 10,000+ world-class courses, hands-on projects, and job-ready certificate programs - all included in your subscription

Learn more

Advance your career with an online degree

Earn a degree from world-class universities - 100% online

Explore degrees

Join over 3,400 global companies that choose Coursera for Business

Upskill your employees to excel in the digital economy

Learn more

Frequently asked questions

Access to lectures and assignments depends on your type of enrollment. If you take a course in audit mode, you will be able to see most course materials for free. To access graded assignments and to earn a Certificate, you will need to purchase the Certificate experience, during or after your audit. If you don't see the audit option:

  • The course may not offer an audit option. You can try a Free Trial instead, or apply for Financial Aid.

  • The course may offer 'Full Course, No Certificate' instead. This option lets you see all course materials, submit required assessments, and get a final grade. This also means that you will not be able to purchase a Certificate experience.

When you enroll in the course, you get access to all of the courses in the Certificate, and you earn a certificate when you complete the work. Your electronic Certificate will be added to your Accomplishments page - from there, you can print your Certificate or add it to your LinkedIn profile. If you only want to read and view the course content, you can audit the course for free.

If you subscribed, you get a 7-day free trial during which you can cancel at no penalty. After that, we don’t give refunds, but you can cancel your subscription at any time. See our full refund policyOpens in a new tab.

More questions

Visit the learner help center

Financial aid available,

Coursera Footer

Technical Skills

  • ChatGPT
  • Coding
  • Computer Science
  • Cybersecurity
  • DevOps
  • Ethical Hacking
  • Generative AI
  • Java Programming
  • Python
  • Web Development

Analytical Skills

  • Artificial Intelligence
  • Big Data
  • Business Analysis
  • Data Analytics
  • Data Science
  • Financial Modeling
  • Machine Learning
  • Microsoft Excel
  • Microsoft Power BI
  • SQL

Business Skills

  • Accounting
  • Digital Marketing
  • E-commerce
  • Finance
  • Google
  • Graphic Design
  • IBM
  • Marketing
  • Project Management
  • Social Media Marketing

Career Resources

  • Essential IT Certifications
  • High-Income Skills to Learn
  • How to Get a PMP Certification
  • How to Learn Artificial Intelligence
  • Popular Cybersecurity Certifications
  • Popular Data Analytics Certifications
  • What Does a Data Analyst Do?
  • Career Development Resources
  • Career Aptitude Test
  • Share your Coursera Learning Story

Coursera

  • About
  • What We Offer
  • Leadership
  • Careers
  • Catalog
  • Coursera Plus
  • Professional Certificates
  • MasterTrack® Certificates
  • Degrees
  • For Enterprise
  • For Government
  • For Campus
  • Become a Partner
  • Social Impact
  • Free Courses
  • ECTS Credit Recommendations

Community

  • Learners
  • Partners
  • Beta Testers
  • Blog
  • The Coursera Podcast
  • Tech Blog

More

  • Press
  • Investors
  • Terms
  • Privacy
  • Help
  • Accessibility
  • Contact
  • Articles
  • Directory
  • Affiliates
  • Modern Slavery Statement
  • Do Not Sell/Share
Learn Anywhere
Download on the App Store
Get it on Google Play
Logo of Certified B Corporation
© 2025 Coursera Inc. All rights reserved.
  • Coursera Facebook
  • Coursera Linkedin
  • Coursera Twitter
  • Coursera YouTube
  • Coursera Instagram
  • Coursera TikTok
Coursera

Welcome back

​
Your password is hidden
​

or

New to Coursera?


Having trouble logging in? Learner help center

This site is protected by reCAPTCHA Enterprise and the Google Privacy Policy and Terms of Service apply.