Introduction to Backend Development by Meta: A Review

1. Introduction

Meta recently introduced a back-end developer specialization on Coursera that aims at getting one from a total beginner level to a level where you can confidently apply for junior back end developer roles.

The specialization consists of 10 courses namely:

  • Introduction to back-end development
  • Introduction to Python
  • Version Control
  • Databases
  • APIs
  • Django Web Framework
  • Cloud Computing
  • The Full Stack
  • Back-end Developer Capstone
  • Coding Interview Preparation

This article is a detailed review of the first course i.e. Introduction to Backend development.

I am currently enrolled into this program and this will be the first in a series of articles reviewing the above courses.

Each review will be extensive and detailed so as to enable you to make a decision as whether to enroll to the program or not.

1.1 Enrollment

There are 2 ways to enroll to the Meta Back-end developer specialization.

(i) The first way is to purchase a Coursera monthly subscription. You can check that out here.

(ii) The second way is to apply for financial aid.

Here is a link to an article about accessing financial aid. One thing to note though is for financial aid, you are applying for financial aid for an individual course in the specialization (which has 10 courses). So to get financial aid you need to do a financial aid application 10 times!

1.2 Mode of delivery

Coursera uses a blend of various delivery methods to make sure that you the learner gains the most from the material.

The typical structure of a modules is as follows: videos, course readings, graded practice quizzes, graded practice labs, practice labs with self reviews and discussion prompts aimed at getting you to give your feedback and interact with other learners. Each module ends with a graded module quiz.

With that in mind, let’s jump straight into the review

2. Course Review

Introduction to back-end development is the first course in the Meta Back-end Specialization course.

The course is divided into 4 modules, with each module representing a week’s worth of study material.

The modules are:

  • Introduction to the program
  • Intro to HTML and CSS
  • Intro to UI frameworks and libraries
  • Final graded assignment module

2.1 Introduction to the program

The first module begins with a few introduction videos and a description of the course syllabus.

The role of a back-end developer is defined and the typical day of a back-end developer shown.

A high level overview of how the internet works follows and is accompanied by some critical definitions like web server, websites, webpages, web browsers, web hosting etc

Since this is a course meant to prepare you to become a back-end developer, an introduction to core internet technologies is necessary and luckily enough, this is covered here in the first module. HTTP and other protocols are introduced at a high level as well as HTML, CSS and JavaScript. You will also be introduced to developer tools and how you can use it on the browser to interrogate web pages.

The three types of APIs i.e. Browser API, REST API and Sensor based APIs are discussed briefly. No discussion of APIs can be complete without the definition of what an endpoint is.

2.2 Introduction to HTML and CSS

The second module in this course is an introduction to HTML. Basic HTML structure of a document is discussed i.e. the HTML, head and body tags. You’ll get some practice creating a basic HTML page on the graded assignments.

Some more advanced topics are also introduced such as the DOM (Document Object Model). The DOM allows JavaScript to access and update elements on a web page. You’ll also learn what the DOM is, how its created and how its used.

Its at this point where you’ll also get introduced to web design for accessibility, some guidelines on how and why its done and the Web Accessibility initiative.

The second half of the module covers an extensive introduction to CSS. CSS stands for Cascading Style Sheets which is a technology that is used to style the webpages you write in HTML.

You’ll learn about declaration blocks and how they target particular HTML code blocks using CSS selectors. You’ll also learn about the different options we have when styling color, text and images.

2.3 Introduction to UI frameworks and libraries

The third module involves and introduction to UI frameworks and libraries i.e. Bootstrap and React.

When designing web pages, you want to create pages that look great on all devices and in various screen display sizes. This is known as responsive design. One of the most commonly applied libraries to help us achieve responsive design is Bootstrap.

Bootstrap is a library of CSS and JavaScript code that you can combine to quickly build visually appealing websites.

You’ll get to understand Bootstrap components, how they relate to responsive design and the basic structure of a bootstrap component and finally get to put your newly learned Bootstrap knowledge into practice in the graded labs.

You’ll get a brief introduction to React and how it can be used to create single page applications. React is a JavaScript framework that allows one to combine components to build a web application.

Its important to note that since this is just but an introduction to some of this technologies, the discussions and the content is specifically tailored to beginners.

Other concepts that are discussed in this module include dependencies, package managers and bundlers.

2.4 The Graded Assignment

The last module is a graded assignment where you’ll get to upgrade the bio page you created during the course.

You’ll use Bootstrap to improve the page and in the process get more hands on practice using Bootstrap.

3. Conclusion

This is the perfect course for anyone out there looking to get a foothold into web development, be it front end or back end. You’ll learn a lot and get to put what you’ve learnt into practice. This course will give you the perfect foundation for the coming courses in the specialization and set you along in the way to become a back-end developer.