100% found this document useful (1 vote)
158 views22 pages

Backend Development Course Outline

This document outlines a 5 week backend development course covering topics like HTML, CSS, databases, APIs, and building a sample project. It includes learning objectives, resources, and questions for each topic. The goal is for students to gain practical skills in backend technologies and apply their knowledge by creating a task manager API.

Uploaded by

Mohd Nazim
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
100% found this document useful (1 vote)
158 views22 pages

Backend Development Course Outline

This document outlines a 5 week backend development course covering topics like HTML, CSS, databases, APIs, and building a sample project. It includes learning objectives, resources, and questions for each topic. The goal is for students to gain practical skills in backend technologies and apply their knowledge by creating a task manager API.

Uploaded by

Mohd Nazim
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd

Learn

Backend
5 weeks to Pro
Day 1-3
Understand How The Web Works
Topic to Cover

8 Client-server architectur3
8 Basics of HTT,
8 IP Addressing, DN)
8 Request Response Cycle

Resources

un How the Web Workk


rn Basics of HTT,
pn Client Server Architectur3
xn What is DNS? Domain Name System, DNS Server, and
IP Address Concepts Explained
Questions

* Imagine you're building a chat application. Is the chat


server considered the client or the server in the client-
server architecture? Explain your choice*
* Perform a command in your terminal (e.g., nslookup) to
retrieve the IP address of a specific domain name 

(e.g., www.example.com). Explain the output*
* Describe the difference between HTTP and HTTPS*
1* Explain the difference between IPv4 and IPv6*
3* Open your browser's developer tools and inspect the
network tab. Load a website and analyze the requests
and responses exchanged during the page load*
* In a client-server model, where does the processing of
data primarily occur, on the client or the server?
Day 4-7
HTML and CSS
Topic to Cover

5 Introduction to HTML tags and element3


5 HTML document structur<
5 CSS syntax and selector3
5 Styling elements and layout3
5 CSS Block Mode4
5 Responsive design principles (Media Queries)

Resources

le https://www.freecodecamp.org/news/html-css-
handbook-for-beginnersa
Re https://www.w3schools.com/htmla
Qe https://www.w3schools.com/cssa
Se https://developer.mozilla.org/en-US/docs/Learn/CSY
Xe https://www.youtube.com/watch?v=G3e-cpL7ofc
Questions

2 Create an HTML structure for a simple blog post,


including headings, paragraphs, images, and links
 Write a CSS selector to target all paragraphs within a
specific class, and provide an example of a style you
could apply to those paragraphs
 How can you style a specific HTML element using an
inline style? Provide an example
$ Create a CSS rule that sets the font color to red for all
headings of a specific class
 Describe the purpose of media queries in responsive
design. Write a media query that targets screens with
a maximum width of 600px and adjusts the font size of
a heading to 18px.
Day 8-11

Introduction to Back-end
Frameworks - Node.js

Topic to Cover

E Setting up Node.js environmen@

E Modules in Node.jD

E Asynchronous ConceptD

E Event loops, CallbackD

E npm and Packages

Resources

mg https://nodejs.dev/en/learna

sg https://www.youtube.com/watch?v=TlB_eWDSMtR

pg https://www.w3schools.com/nodejs/
Questions

1 Why is it important to have a package manager like


npm when working with Node.js
/ Differentiate between built-in modules and external
modules in Node.js
. Create a JavaScript file with a function. Export the
function using module.exports and import it in another
file
) Explain the purpose of callbacks in Node.js and how
they prevent blocking behavior
 Create a simple program that reads a file
asynchronously using the fs module. Use a callback to
handle the data
 How do you find, install, and manage packages using
npm?
Day 12-14

Relational Databases

Topic to Cover

. Introduction to relational databases'

. Tables, rows, columns, and relationships.

Resources

t' https://www.oracle.com/in/database/what-is-a-
relational-databased

`' https://cloud.google.com/learn/what-is-a-relational-
databasem

U' System Design — SQL vs NoSQL. Concepts and


considerations for SQL and… | by Larry | Peng Yang |
Computer Science Fundamentals | Mediux

i' How To Choose The Right DatabaseE

B' System Design Interview Prep: SQL vs NoSQL


Databases - Exponenu

g' Databases: system design interview concepts (2 of 9)


Questions

9. Explain the concept of normalization in the context of


relational databases. What are the benefits and
drawbacks of normalization
. Compare the differences between INNER JOIN, LEFT
JOIN, and RIGHT JOIN operations in SQL.
. Explain the trade-offs between using a relational
database and a NoSQL database for a specific use
case.
3. Explain the concept of a self-join in SQL. Provide an
example query that demonstrates a self-join.
. Explain the concept of a primary key in a relational
database. Why is it important, and how is it different
from a unique key
#. Given two tables, Customers and Orders, write an SQL
query to retrieve all customers and their orders using
an INNER JOIN.
Day 15-17

Non-Relational Databases
(NoSQL)

Topic to Cover

G Introduction to NoSQL databases:

G Types of NoSQL databases: Document-based, Key-


Value, Column-Family, and Graph:

G Schema flexibility in NoSQL databases.

Resources

x: What is NoSQLc

h: NoSQL Databases: An OvervieZ

g: Introduction to NoSQL Databaseq

u: CAP Theorem Explained


Questions

3% Explain the key characteristics of NoSQL databases


and how they differ from relational databases%
% Discuss the concept of schema flexibility in NoSQL
databases and why it's important. Provide an example%
% Give an example of a real-world use case where a
document-based NoSQL database like MongoDB
would be a suitable choice%
+% What is eventual consistency in the context of NoSQL
databases, and why is it important for distributed
systems
-% Explain the concept of sharding in NoSQL databases
and how it helps in scalability. Provide a use case
where sharding would be beneficial%
% You are designing a backend for a content
management system where users can create and edit
articles with varying structures. Explain why you would
choose MongoDB as the database system for this
application and provide a basic schema example.
Day 18-21
Advanced Database Concepts
Topic to Cover

3 ACID Propertie7
3 Database sharding and partitionin'
3 Database indexin'
3 Concurrency Control

Resources

lo ACID Properties in DBMS - GeeksforGeek7


\o Database Sharding vs. Partitioning: What’s the
Differencew
Zo System Design — Sharding / Data Partitioning | by
Larry | Peng Yang | Computer Science Fundamentals |
Mediu]
Fo An in-depth look at Database Indexin'
Do Concurrency Control in DBMS - GeeksforGeeks
Questions

1( Explain the ACID properties in the context of database


transactions. How do they ensure data integrity
( Discuss the trade-offs between ensuring strong ACID
properties and achieving high performance in a
database system(
( Define database sharding and partitioning. How do
they contribute to scalability
*( What are the key factors to consider when selecting a
sharding key for a database table
( Compare B-tree indexes and hash indexes. When
would you choose one over the other
( What is a deadlock? Provide an example and describe
strategies to prevent or resolve deadlocks(
( In a high-traffic e-commerce website, discuss the
trade-offs between ensuring strong ACID properties
and achieving high performance in the database
system.
Day 21-24

REST API

Topic to Cover

8 HTTP Verb&

8 Request and Response Forma,

8 Statelessnes&

8 Security and Authentication

Resources

_P https://www.restapitutorial.comU

bP https://www.youtube.com/watch?v=lsMQRaeKNDd

aP https://www.geeksforgeeks.org/rest-api-introductionU

XP https://rapidapi.com/learn/rest
Questions

: Explain the purpose of HTTP verbs (GET, POST, PUT,


DELETE) in RESTful APIs
 Create a simple Express.js server with routes for
handling POST, PUT, and DELETE requests
 Explain the structure of an HTTP response, including
status codes and response bodies
5 Design an API response format for a user registration
endpoint that returns a success message and a user
ID
 Explain how statelessness contributes to scalability
and simplicity in API design
( Explore API key authentication: Generate an API key,
send it as a header in a request, and validate it on the
server
 Explain the difference between authentication and
authorization.
Day 25-29
Websockets and WebHooks
Topic to Cover

' Implementation of WebHook+


' Websocket protocol+
' Use cases

Resources

_L https://hookdeck.com/webhooks/guides/when-to-use-
webhooks#webhooks-or-pubsuK
HL https://www.youtube.com/watch?v=6RvlKYgRFY=
FL https://nonamesecurity.com/learn/api-vs-webhook-vs-
websocket/
Questions

+ Describe a use case where webhooks are a suitable


choice for communication
 How do webhooks typically handle data transmission
between services$
 How does real-time data exchange work in a
WebSocket-based application$
( Why might WebSockets be preferred over webhooks
for real-time document collaboration?
Day 30-35
Websockets and WebHooks
Building a small project is an excellent way to learn
backend development as it allows you to apply your
knowledge in a practical context. Let's create a simple
project idea and provide content to help you get started.

Project Idea: Task Manager API

Project Description
Create a basic task manager API that allows users to
create, read, update, and delete tasks. Users should be
able to register, log in, and manage their tasks. This
project will cover fundamental backend development
concepts such as routing, database interaction,
authentication, and API endpoints.

Technologies to Use
For this project, you can use Node.js as the backend
runtime and
Day 30-31

Database and User Authentication

 Setup: Create a new project directory and initialize it


with Node.js and npm%

 Server: Set up a basic Express.js server with a simple


"Hello World" route.

Database and User Authentication

 Database: Install and configure MongoDB for local


development%

 User Authentication: Implement basic user


registration and login functionality with password
hashing.
Day 32-34

Task Management API

1 Task Model: Define a schema for tasks and set up a


MongoDB collection for tasks(

1 API Endpoints: Create API endpoints for creating,


reading, updating, and deleting tasks(

1 CRUD Operations: Implement basic CRUD operations


for tasks in your database.

User Tasks and Authorization

1 User-Specific Tasks: Ensure that tasks are associated


with the authenticated user(

1 Authorization Middleware: Create middleware to


protect routes that require authentication.
Day 35

Deployment
Deploy your project to a hosting platform like
Heroku or AWS. Set up a production database
and configure environment variables.
Why

Bosscoder?
1000+ Alumni placed at Top
Product-based companies.

More than 136% hike for every 



2 out of 3 working professional.

Average package of 24LPA.

Explore More

You might also like