If you are curious to learn more about the field of software engineering, this course is for you. No prior knowledge or qualification in programming or software development is necessary. Software Engineers are in great demand and now is a great time to learn more about this exciting career path.
This course is part of the Applied Software Engineering Fundamentals Specialization
Offered By


About this Course
Basic computer literacyÂ
What you will learn
Describe software engineering, approaches to software development, and software development tools and technologies.
Evaluate different types of programming languages and synthesize basic programming constructs.Â
Outline approaches to application and deployment architectures.Â
Summarize the skills required in software engineering and describe the career options it provides.
Skills you will gain
- Basic programming concepts
- Careers in software engineering
- Programming languages and frameworks
- The Software Development Lifecycle (SDLC)
- Software Architecture
Basic computer literacyÂ
Offered by

IBM Skills Network
IBM is the global leader in business transformation through an open hybrid cloud platform and AI, serving clients in more than 170 countries around the world. Today 47 of the Fortune 50 Companies rely on the IBM Cloud to run their business, and IBM Watson enterprise AI is hard at work in more than 30,000 engagements. IBM is also one of the world’s most vital corporate research organizations, with 28 consecutive years of patent leadership. Above all, guided by principles for trust and transparency and support for a more inclusive society, IBM is committed to being a responsible technology innovator and a force for good in the world.
Syllabus - What you will learn from this course
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
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.
About the Applied Software Engineering Fundamentals Specialization
If you want to enter the exciting world of software development, this Software Engineering Foundations Specialization is for you. No prior degrees or knowledge of programming or application development are necessary. Software Developers are in great demand earning a median salary of US$110,140 per year according to the US Bureau of Labor and Statistics. The field is growing at a rate of 22% making it a great time to start in this career in of software engineering. The self-paced courses in this program provide the foundations to prepare for a wide range of IT & software development related careers, including web development, mobile application development, front-end, back-end, and full stack application development, software testing & quality assurance (QA), as well as DevOps engineering. This specialization is full of engaging videos, hands-on labs, and real-world projects that explore fundamental programming principles and foundations of design, architecture, and deployment; the software development lifecycle; Git and GitHub repositories; using the Linux terminal and creating Bash shell scripts to automate a variety of tasks; and coding with the Python programming language. The program is suitable for those new to software engineering or for those who would like a review of software engineering fundamentals. It prepares you with an introduction to the culture, technology, and job-ready skills needed to become successful in software engineering.   

Frequently Asked Questions
When will I have access to the lectures and assignments?
What will I get if I subscribe to this Specialization?
Is financial aid available?
More questions? Visit the Learner Help Center.