Full Stack Application Development
Offered By: IBM via edX
Course Description
Overview
The adoption of cloud technologies is driving enterprises, big and small, to be more agile, innovative, and competitive, and to create differentiated customer and user experiences. This MicroBachelors Program will provide you with a broad set of skills and the technical aptitude to launch your career as a Full Stack Developer.
The Full Stack Cloud Applications Development MicroBachelors Program from IBM will teach you the tools and technologies that successful software developers, and web developers use to build, deploy, test, run and manage Full Stack Cloud Native applications – putting you in an advantageous position to begin a new career in a fast-growing field.
You do not need any prior programming experience or Cloud background to begin this program. The courses in this program will help you develop the skills needed for developing web and SaaS applications that are in high demand, including:
Cloud infrastructure, HTML, CSS, JavaScript, GitHub, Node.js, React, Cloud Native practices, DevOps, CI/CD, Agile Software Development, Containers, Docker, Kubernetes, OpenShift, Istio, Python programming, Databases, NoSQL, SQL, Django, Bootstrap, Application Security, Microservices, Serverless Computing, and more.
Your program experience you will also cover foundational capabilities and in-demand topics areas including:
- The fundamentals of Python, one of the most popular and beginner friendly programming languages and employ various Python programming constructs to create a Cloud application.
- The ability to containerize applications and deploy containers in Cloud using Docker images, and orchestrate & scale applications using the Kubernetes and OpenShift ecosystem.
- Compose SQL queries to insert, select, update, delete and join data in a relational database like PostgreSQL.
- Explain Object Relational Model (ORM) and employ Django ORM to develop a database powered application.
- Employ Microservices and Serverless Computing, in your Software Development Architecture. Develop SaaS applications composed of several microservices and deploy them on private, public or hybrid clouds.
In the Final Project for this program, you will demonstrate your proficiency in Software Engineering using various Cloud Native tool, technologies, languages, and frameworks. You will create a full stack cloud application consisting of multiple microservices, and build and deploy them using CI/CD on IBM Cloud. You will also gain experience building web applications using Node.JS, React, and implementing a chatbot feature through Watson AI (Artificial Intelligence) services.
After completing the IBM Full Stack Cloud Application Development MicroBachelors Program, you will have acquired the skills to develop, deploy, run and manage applications using front-end and back-end technologies and will be ready to embark on one of the fastest growing career paths.
"We're delighted that IBM is our first corporate partner to offer a MicroBachelors program on edX. Not only is IBM a longtime partner in delivering online education that equips learners with real skills for the workplace, but they are innovating with us as we meet the needs of learners without a college degree with our MicroBachelors programs. This particular program is incredible because it's for people with no prior programming or cloud experience, and prepares them for an entry-level role as a full stack developer with the option to get college credit from our university credit partner." - Anant Agarwal, edX Founder and CEO
Syllabus
Course 1: Introduction to Cloud Computing
Jumpstart your cloud expertise and explore offerings of AWS, Google, and IBM; delve into IaaS, PaaS, SaaS models, and cloud security. Experience IBM Cloud app deployment. Perfect for executives, students, and budding professionals.
Course 2: Introduction to Web Development with HTML5, CSS3, and JavaScript
Learn the key tools and programming languages to bootstrap your career as a Cloud Developer. Get started with web development using HTML5, CSS3, JavaScript and GitHub.
Course 3: Introduction to Cloud Native, DevOps, Agile, and NoSQL
Learn to develop cloud-native applications from scratch in this comprehensive course. Covering key cloud concepts, tools, and techniques, you'll also explore DevOps culture, CI/CD practices, and MongoDB principles.
Course 4: Developing Front End Apps with React
Develop hands-on skills with front-end applications using the React web framework user interface library.
Course 5: Back-end Application Development with Node.js and Express
In a recent Stack Overflow survey, Node.js was used by about 50% of the developers who answered the survey, making it the most used server-side technology. Express ranked as the fourth most popular web technology overall, making it the most popular server-side web framework.
Course 6: Introduction to Containers, Kubernetes and OpenShift
This course introduces you to containers and its emerging ecosystem of related technologies such as Docker, Kubernetes, OpenShift, and Istio. You will not only understand the concepts but also practice hands-on in the cloud.
Course 7: Python Basics for Data Science
This Python course provides a beginner-friendly introduction to Python for Data Science. Practice through lab exercises, and you'll be ready to create your first Python scripts on your own!
Course 8: Python for AI & Development Project
This mini-course introduces you to the process for unit testing Python code, including building and running unit tests and packaging the Python application for distribution.
Course 9: Django Application Development with SQL and Databases
This course introduces you to the basics of SQL, Django and Bootstrap. You will gain hands-on practical experience developing and deploying a full-stack Django web application on the cloud.
Course 10: Microservices and Serverless
Design, develop, deploy, manage and secure applications and solutions on public, private or hybrid cloud platforms
Course 11: Full Stack Application Development Project
For this project you will apply your knowledge of front end and back end development gained from previous courses and build and deploy a full stack real-world web application on the cloud.
Course 12: Cloud Application Developer Capstone
In this project you will sharpen your new full stack cloud application development skills. You will use modern tools and technologies to create a working cloud ecosystem. You will design and develop a comprehensive solution that reflects your mastery of key cloud native computing concepts and capabilities.
Courses
-
Please Note: Learners who successfully complete this IBM course can earn a skill badge —a detailed, verifiable and digital credential that profiles the knowledge and skills you’ve acquired in this course. Enroll to learn more, complete the course and claim your badge!
Kickstart your learning of Python for data science, as well as programming in general with this introduction to Python course. This beginner-friendly Python course will quickly take you from zero to programming in Python in a matter of hours and give you a taste of how to start working with data in Python. ~~~~
Upon its completion, you'll be able to write your own Python scripts and perform basic hands-on data analysis using our Jupyter-based lab environment. If you want to learn Python from scratch, this course is for you.
You can start creating your own data science projects and collaborating with other data scientists using IBM Watson Studio. When you sign up, you will receive free access to Watson Studio. Start now and take advantage of this platform and learn the basics of programming, machine learning, and data visualization with this introductory course.
-
Please Note: Learners who successfully complete this IBM course can earn a skill badge — a detailed, verifiable and digital credential that profiles the knowledge and skills you’ve acquired in this course. Enroll to learn more, complete the course and claim your badge!
Want to take the first steps to become a Cloud Application Developer? This self-paced online course will lead you through the programming languages and tools you will need to develop your own Cloud and Web Applications.
Beginning with an explanation of how internet servers, and clients work together to deliver applications to users, this course takes you through the context for application development in the Cloud, introducing front-end, back-end, and full stack development.
You’ll then focus on the languages you need for front-end development, working with HTML5, CSS3, and JavaScript.
Finally, you will discover tools such as Git, GitHub, and GitLab, that help you to store your projects and keep track of changes made to project files (version control) and enable collaboration and continuos deployment.
-
Interested in learning the complete process of developing cloud-native applications, from start to finish? Then this course is for you!
This course covers essential cloud concepts like Cloud Native Applications and Cloud Native Computing Foundations (CNCF) and their impact on cloud app developers. You'll also dive into specific tools and techniques for building these apps.
You’ll then move on to improving your organization’s culture through DevOps. This involves maintaining consistent behavior and high code quality through approaches like test-driven and behavior-driven development. It will help you establish uniform practices and uphold exemplary code quality.
Additionally, the course explains the benefits of implementing Continuous Integration (CI) and Continuous Delivery (CD) alongside Agile and Scrum methodologies. You'll also understand how aligning teams and promoting autonomy contributes to building superior systems.
The course also covers MongoDB principles in depth and explores IBM Cloudant, including its architecture, technologies, advantages, and common use cases.
Finally, the course concludes with a hands-on project. In this project, you'll deploy and modernize an application, refine user stories, add new features, and redeploy using CI/CD. This project will serve as a valuable addition to your portfolio, showcasing your newly acquired skills.
-
Please Note: Learners who successfully complete this IBM course can earn a skill badge — a detailed, verifiable and digital credential that profiles the knowledge and skills you’ve acquired in this course. Enroll to learn more, complete the course and claim your badge!
In this course, you will focus on Node.js and Express. Specifically, you will
- develop applications using asynchronous callbacks and promises
- create REST APIs and perform CRUD operations
- implement authentication and session management
Throughout the course, you will complete numerous hands-on labs to gain practical experience. At the end of the course, you will demonstrate your Node skills with a final project to build your portfolio.
This course will help you succeed as a back-end or full-stack developer. It suits those in IT looking to step up in their careers or new graduates seeking to establish their server-side skills. This course suits those who need to manage cloud-centric projects.
Note: This course requires knowledge of JavaScript and Git.
-
Please Note: Learners who successfully complete this IBM course can earn a skill badge — a detailed, verifiable and digital credential that profiles the knowledge and skills you’ve acquired in this course. Enroll to learn more, complete the course and claim your badge!
In this course designed for beginners, You will learn how to build cloud native applications using current containerization tools and technologies such as containers, Docker, container registries, Kubernetes, OpenShift, and Istio. And also how to deploy and scale your applications in any public, private, or hybrid cloud.
By the end of the course, you’ll be able to build a container image, then deploy and scale your container on the cloud using OpenShift.
If you understand basic cloud and programming concepts, and your career path includes roles such as cloud developer, cloud architect, cloud system engineer, DevOps engineer, and cloud networking specialist, this course is for you!
-
Please Note: Learners who successfully complete this IBM course can earn a skill badge — a detailed, verifiable and digital credential that profiles the knowledge and skills you’ve acquired in this course. Enroll to learn more, complete the course and claim your badge!
The essential building blocks of application development include accessing, processing, and presenting data. With vast amounts of data stored in various databases, on the cloud or on-premises, developers will use a language like SQL.
This course introduces you to the basics of SQL, a simple and powerful programming language for querying and managing data, and the fundamentals of cloud databases. You will discover Object-Relational Mapping (ORM), and how to use Object-Oriented Programming (OOP) languages to work with databases.
You will be introduced to Django, a fast and simple open source web framework used by developers to simplify their work. You will learn how Django models, views and templates work together to present data on a website and will use Django’s powerful admin site functionality to manage site content. And you will discover Bootstrap, a free and open-source web front-end framework.
As a final project, you will gain hands-on practical experience developing and deploying a full-stack Django web application on the cloud.
-
Please Note: Learners who successfully complete this IBM course can earn a skill badge — a detailed, verifiable and digital credential that profiles the knowledge and skills you’ve acquired in this course. Enroll to learn more, complete the course and claim your badge!
The emergence of cloud computing has brought about a lot of changes to modern software development. Rather than large annual releases on physical mediums like CDs, modern software is increasingly released on the cloud, provided cost reduction, decreased time to market, and increased agility. These changes allow organizations to keep pace with their competitors and bring new innovations to market in ways that previously would have been unthinkable.
Rather than building large applications, known as monoliths, that perform all the functionality, microservices break down larger applications into smaller pieces that are independently maintainable and scalable, providing a host of benefits. This architecture is used at the largest software organizations in the world, because it provides cost benefits, team autonomy, and so many other advantages.
By the end of this course, you will
- Have a solid foundation for microservices and serverless
- Deploy microservices on the cloud
- Integrate microservices with serverless compute
This course will introduce you to 12-factor apps and microservices, concepts that emerged to help organizations work better and faster in a cloud-native manner. You’ll then learn about serverless computing—how it works, what value it brings, and what are specific serverless technologies. You’ll get hands-on with IBM Cloud Functions, a serverless platform on IBM Cloud that lets you develop serverless apps with ease. Finally, you will learn to build and deploy applications using container images on the code engine.
The course contains several hands-on labs which allow you to apply the content you learn.
The prerequisites for this course include basic computer and cloud literacy as well as an understanding of core cloud concepts. In addition, understanding of the command line and how to use shell commands will greatly benefit you during this course.
-
Please Note: Learners who successfully complete this IBM course can earn a skill badge — a detailed, verifiable and digital credential that profiles the knowledge and skills you’ve acquired in this course. Enroll to learn more, complete the course and claim your badge!
In this project you will apply your knowledge of front end and back end development to build and deploy a full stack real-world web application on the cloud.
Your project will showcase your understanding of the user experience and user interface design process, and your skills and technologies with Django, Python, Node.JS and Containers.
After completing this project, you will have gained hands-on practical experience with a real-world project and be able to demonstrate your proficiency of front end and back end skills to potential employers.
-
The project provides you with a real-life challenge that requires you to flex and firm your cloud native application development muscle. You will start with a problem situation. To address this problem, you will use resources like GitHub, IBM Cloud services, and open source frameworks, and you will apply your knowledge of cloud native languages, database management, AI/machine learning, continuous integration and continuous delivery, and cloud native APIs. Through a series of labs and assessments, you will use modern tools and services including IBM Watson Assistant, IBM Cloudant, HTML, CSS, JavaScript, JSON, Node.js, React.js, and Express.js.
The second part of this course will have you review and test your overall understanding of cloud computing concepts, languages, frameworks, databases, and architectural models. When you complete this project and final test, you will have raised your skills to a higher level and built a working cloud native application that will impress potential employers.
Taught by
Upkar Lidder, Rav Ahuja, Joseph Santarcangelo, Ramesh Sannareddy, Alex Parker, Heather Nelson and Yan Luo
Tags
Related Courses
Artificial Intelligence for RoboticsStanford University via Udacity Intro to Computer Science
University of Virginia via Udacity Design of Computer Programs
Stanford University via Udacity Web Development
Udacity Programming Languages
University of Virginia via Udacity