IBM
IBM Applied Software Engineering Fundamentals Specialization
IBM

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

Included with Coursera Plus

Get in-depth knowledge of a subject
4.7

(877 reviews)

Beginner level

Recommended experience

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

(877 reviews)

Beginner level

Recommended experience

Flexible schedule
2 months at 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
55 practice exercises

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

 logos of Petrobras, TATA, Danone, Capgemini, P&G and L'Oreal

Specialization - 5 course series

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

Software Engineering, Software Development Life Cycle, Unified Modeling Language, Back-End Web Development, Front-End Web Development, Object Oriented Design, Software Architecture, Web Development, Application Development, Agile Methodology, Software Design, Integrated Development Environments, Programming Principles, Software Design Patterns, Python Programming, and Scrum (Software Development)

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

GitHub, Git (Version Control System), Collaborative Software, Command-Line Interface, Version Control, Open Source Technology, DevOps, and Web Applications

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

Linux Commands, Shell Script, Linux, File Management, Unix, Scripting, Unix Commands, Linux Servers, Scripting Languages, Automation, Operating Systems, Bash (Scripting Language), Command-Line Interface, Network Protocols, Software Installation, and Ubuntu

What you'll learn

  • Develop a foundational understanding of Python programming by learning basic syntax, data types, expressions, variables, and string operations.

  • Apply Python programming logic using data structures, conditions and branching, loops, functions, exception handling, objects, and classes.

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

  • Access and extract web-based data by working with REST APIs using requests and performing web scraping with BeautifulSoup.

Skills you'll gain

Python Programming, Pandas (Python Package), Data Structures, Web Scraping, NumPy, Application Programming Interface (API), Data Manipulation, JSON, Object Oriented Programming (OOP), Data Processing, Scripting, Restful API, Automation, Data Import/Export, Programming Principles, Computer Programming, Data Analysis, and Jupyter

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

  • Build and deploy web applications using Flask, including routing, error handling, and CRUD operations.

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

Skills you'll gain

Application Deployment, Unit Testing, Restful API, Python Programming, Application Programming Interface (API), Flask (Web Framework), Web Applications, Software Development Life Cycle, Programming Principles, Artificial Intelligence, and Integrated Development Environments

Earn a career certificate

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

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.¹

 

Instructors

Abhishek Gagneja
IBM
6 Courses240,853 learners
Joseph Santarcangelo
IBM
36 Courses2,185,735 learners

Offered by

IBM

Compare with similar products

Rating
Level
Skills
Tools
Last updated
Number of practice exercises
Degree eligibility
Part of Coursera Plus

You might also like

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

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

Frequently asked questions

¹ Median salary and job opening data are sourced from Lightcast™ Job Postings Report. Content Creator, Machine Learning Engineer and Salesforce Development Representative (1/1/2024 - 12/31/2024) All other job roles (10/1/2024 - 10/1/2025)