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