IBM
Applied Software Engineering Fundamentals Specialization
IBM

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.

Abhishek Gagneja
Joseph Santarcangelo
Rav Ahuja

Instructors: Abhishek Gagneja

Sponsored by BIDAcademy

10,045 already enrolled

Get in-depth knowledge of a subject
4.7

(487 reviews)

Beginner level

Recommended experience

Flexible schedule
2 months, 10 hours a week
Learn at your own pace
Build toward a degree
Get in-depth knowledge of a subject
4.7

(487 reviews)

Beginner level

Recommended experience

Flexible schedule
2 months, 10 hours a week
Learn at your own pace
Build toward a degree

What you'll 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. 

Details to know

Shareable certificate

Add to your LinkedIn profile

Taught in English

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

Placeholder

Advance your subject-matter expertise

  • Learn in-demand skills from university and industry experts
  • Master a subject or tool with hands-on projects
  • Develop a deep understanding of key concepts
  • Earn a career certificate from IBM
Placeholder
Placeholder

Earn a career certificate

Add this credential to your LinkedIn profile, resume, or CV

Share it on social media and in your performance review

Placeholder

Specialization - 5 course series

Introduction to Software Engineering

Course 114 hours4.7 (2,566 ratings)

What you'll 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.

Skills you'll gain

Category: Software Engineering
Category: Software Development
Category: Software Development Tools
Category: Programming Principles
Category: Software Architecture
Category: Computer Programming
Category: Systems Development Life Cycle
Category: Software Development Life Cycle
Category: Unified Modeling Language
Category: Development Environment
Category: Software Testing
Category: Software Design
Category: Agile Software Development
Category: Integrated Development Environments
Category: Software Development Methodologies
Category: Software Documentation
Category: Application Development
Category: CI/CD
Category: Software Quality Assurance
Category: Application Lifecycle Management

Getting Started with Git and GitHub

Course 210 hours4.6 (1,534 ratings)

What you'll learn

  • Describe version control and its place in social and collaborative coding and in DevOps.

  • Explain basic Git concepts such as repositories and branches used for distributed version control and social coding.

  • Create GitHub repositories and branches, and perform pull requests (PRs) and merge operations, to collaborate on a team project.

  • Build your portfolio by creating and sharing an open-source project on GitHub.

Skills you'll gain

Category: GitHub
Category: Version Control
Category: Git (Version Control System)
Category: Software Development Tools
Category: Software Configuration Management
Category: Software Versioning
Category: Application Lifecycle Management
Category: Configuration Management
Category: Software Engineering
Category: Software Development Life Cycle
Category: Software Development
Category: Open Source Technology

Hands-on Introduction to Linux Commands and Shell Scripting

Course 314 hours4.7 (1,456 ratings)

What you'll learn

  • Describe the Linux architecture and common Linux distributions and update and install software on a Linux system.

  • Perform common informational, file, content, navigational, compression, and networking commands in Bash shell.

  • Develop shell scripts using Linux commands, environment variables, pipes, and filters.

  • Schedule cron jobs in Linux with crontab and explain the cron syntax. 

Skills you'll gain

Category: Linux
Category: Linux Administration
Category: Unix
Category: Unix Shell
Category: Command-Line Interface
Category: Linux Commands
Category: Systems Administration
Category: Shell Script
Category: Computing Platforms
Category: Scripting
Category: Scripting Languages
Category: Bash (Scripting Language)
Category: Operating Systems
Category: IT Management
Category: Computer Science
Category: IT Infrastructure
Category: Information Technology

Python for Data Science, AI & Development

Course 425 hours4.6 (39,468 ratings)

What you'll learn

  • Learn Python - the most popular programming language and for Data Science and Software Development.

  • Apply Python programming logic Variables, Data Structures, Branching, Loops, Functions, Objects & Classes.

  • Demonstrate proficiency in using Python libraries such as Pandas & Numpy, and developing code using Jupyter Notebooks.

  • Access and web scrape data using APIs and Python libraries like Beautiful Soup.

Skills you'll gain

Category: Python Programming
Category: Computer Programming
Category: Computer Science
Category: NumPy
Category: Web Scraping
Category: Data Science
Category: Data Analysis
Category: Data Manipulation
Category: Data Processing
Category: Pandas (Python Package)
Category: Information Management
Category: Object Oriented Programming (OOP)
Category: Application Programming Interface (API)
Category: Data Structures
Category: Algorithms
Category: Data Engineering
Category: Jupyter
Category: Extract, Transform, Load
Category: Object Oriented Design
Category: Software Development

Developing AI Applications with Python and Flask

Course 511 hours4.4 (920 ratings)

What you'll learn

  • Describe the steps and processes involved in creating a Python application including the application development lifecycle

  • Create Python modules, run unit tests, and package applications while ensuring the PEP8 coding best practices

  • Explain the features of Flask and deploy applications on the web using the Flask framework

  • Create and deploy an AI-based application onto a web server using IBM Watson AI Libraries and Flask

Skills you'll gain

Category: Python Programming
Category: Software Development
Category: Web Development
Category: Full-Stack Web Development
Category: Software Testing
Category: Back-End Web Development
Category: Application Development
Category: Flask (Web Framework)
Category: Software Engineering
Category: Systems Development Life Cycle
Category: Web Services
Category: Computer Programming
Category: Restful API
Category: API Design
Category: Server Side
Category: Application Deployment
Category: Web Applications
Category: Application Programming Interface (API)
Category: Application Lifecycle Management
Category: Unit Testing

Instructors

Abhishek Gagneja
IBM
5 Courses164,346 learners
Joseph Santarcangelo
IBM
33 Courses1,750,039 learners

Offered by

IBM

Build toward a degree

When you complete this Specialization, you may be able to have your learning recognized for credit if you are admitted and enroll in one of the following online degree programs.¹

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."
Placeholder

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

Advance your career with an online degree

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

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

Upskill your employees to excel in the digital economy