- Software Design and Architecture
- Python Programming
- Git and GitHub
- Software Development Lifecycle (SDLC)
- Basic programming concepts
- Careers in software engineering
- Programming languages and frameworks
- The Software Development Lifecycle (SDLC)
- Software Architecture
- Shell Script
- Bash (Unix Shell)
Applied Software Engineering Fundamentals Specialization
Build the foundation of your career in Software. Develop hands-on experience with Git, GitHub, Linux, and Python, and learn the fundamentals of Software Engineering.
What you will learn
Describe software development and related technologies; outline approaches to deployment architectures; and summarize career options in the field.
Explain the role of version control and collaborative coding in SDLC & DevOps; Create GitHub repositories and use branching with Git commands.
List and execute commonly used Linux commands, utilize pipes and redirection, create simple shell scripts using BASH, schedule jobs using Cron.
Create, package, and deploy Python applications using knowledge of programming constructs, libraries, APIs and web services.
Skills you will gain
About this Specialization
Applied Learning Project
Each course is packed with hands-on labs, interactive activities, and projects so you can build your portfolio while gaining practical knowledge of software engineering concepts. You will develop software engineering skills throughout the program. Projects involve:.
Exploring job listings to become familiar with skills and requirements in the Software Engineering domain.
Using Git commands and GitHub to create an open source project while working with branches, merging code, and performing pull requests (PRs).
Writing a Bash shell script on Linux that takes backups of changed files and schedules it to run every 24 hours using Crontab.
Coding with Python using lists, tuples, dictionaries, sets, conditions, branching, loops, functions, exception handling, objects, and classes, web services & APIs, and libraries like NumPy & Pandas.
Developing a Python web app that uses IBM Watson to translate languages, including writing unit tests and packaging the app for distribution.
How the Specialization Works
A Coursera Specialization is a series of courses that helps you master a skill. To begin, enroll in the Specialization directly, or review its courses and choose the one you'd like to start with. When you subscribe to a course that is part of a Specialization, you’re automatically subscribed to the full Specialization. It’s okay to complete just one course — you can pause your learning or end your subscription at any time. Visit your learner dashboard to track your course enrollments and your progress.
Every Specialization includes a hands-on project. You'll need to successfully finish the project(s) to complete the Specialization and earn your certificate. If the Specialization includes a separate course for the hands-on project, you'll need to finish each of the other courses before you can start it.
Earn a Certificate
When you finish every course and complete the hands-on project, you'll earn a Certificate that you can share with prospective employers and your professional network.
There are 5 Courses in this Specialization
Introduction to Software Engineering
Getting Started with Git and GitHub
Python for Data Science, AI & Development
Frequently Asked Questions
What is the refund policy?
Can I just enroll in a single course?
Is financial aid available?
Can I take the course for free?
Is this course really 100% online? Do I need to attend any classes in person?
How long does it take to complete the Specialization?
What background knowledge is necessary?
Do I need to take the courses in a specific order?
Will I earn university credit for completing the Specialization?
What will I be able to do upon completing the Specialization?
Do I need to know anything about Software Engineering to take this course?
Do I need to download and install any software tools to complete this course?
More questions? Visit the Learner Help Center.