Download as pdf or txt
Download as pdf or txt
You are on page 1of 23

Learn

Backend
5 Weeks to Pro
JAVA MySQL

C++ </>

PHP
*Disclaimer*
Everyone learns uniquely.

Learn Backend in a structured manner and


master it by practically applying your skills.

This Doc will help you with the same.

Day 1-3
Understand How The Web Works
Topic to Cover

Client-server architectur
Basics of HTT
IP Addressing, DN
Request Response Cycle

Resources

How the Web Work


Basics of HTT
Client Server Architectur
What is DNS? Domain Name System, DNS Server, and
IP Address Concepts Explained
Questions

Use a terminal command (such as nslookup or dig) to


look up the DNS records for a domain (e.g.,
www.example.com). Describe the information returned
by this command
Compare and contrast the security features and use
cases of HTTP and HTTPS
Discuss the key distinctions between IPv4 and IPv6
addressing, including their structure and benefits
Use the network tab in your browser's developer tools
to observe the HTTP requests and responses when
loading a webpage. What types of information can you
gather from this analysis
In a client-server architecture, how is data processing
typically divided between the client and the server?
Provide examples of tasks performed by each.
Day 4-7
HTML and CSS
Topic to Cover

Introduction to HTML tags and element


HTML document structur
CSS syntax and selector
Styling elements and layout
CSS Block Mode
Responsive design principles (Media Queries)

Resources

https://www.freecodecamp.org/news/html-css-
handbook-for-beginners
https://www.w3schools.com/html
https://www.w3schools.com/css
https://developer.mozilla.org/en-US/docs/Learn/CS
https://www.youtube.com/watch?v=G3e-cpL7ofc
Questions

Design an HTML layout for a basic blog article,


ensuring it contains a title, content sections, images,
and hyperlinks
Create a CSS rule to style all paragraph elements
inside a particular class and demonstrate a style you
might apply, such as changing the text color
Explain how to apply an inline style to an HTML
element and give an example, such as setting the
background color
Write a CSS selector that changes the text color to red
for all heading elements with a designated class
Explain the role of media queries in creating
responsive web designs. Provide an example of a
media query that applies to screens 600px wide or
smaller, setting the heading font size to 18px.
Day 8-11

Introduction to Back-end
Frameworks - Node.js

Topic to Cover

Setting up Node.js environmen

Modules in Node.j

Asynchronous Concept

Event loops, Callback

npm and Packages

Resources

https://nodejs.dev/en/learn

https://www.youtube.com/watch?v=TlB_eWDSMt

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

What are the benefits of using a package manager


such as npm for Node.js development
Compare and contrast built-in Node.js modules with
third-party external modules
Write a JavaScript module that defines a function,
exports it using module. exports, and then
demonstrate how to import and use this function in a
separate file
Describe how callbacks function in Node.js and why
they are crucial for non-blocking I/O operations
Develop a Node.js script that uses the fs module to
read a file asynchronously, utilizing a callback to
process the file's contents
Outline the steps to search for, install, and manage
npm packages in a Node.js project.
Day 12-14
Relational Databases
Topic to Cover

Introduction to relational databases


Tables, rows, columns, and relationships.

Resources

https://www.oracle.com/in/database/what-is-a-
relational-database
https://cloud.google.com/learn/what-is-a-relational-
database
System Design — SQL vs NoSQL. Concepts and
considerations for SQL and… | by Larry | Peng Yang |
Computer Science Fundamentals | Mediu
How To Choose The Right Database
System Design Interview Prep: SQL vs NoSQL
Databases - Exponen
Databases: system design interview concepts (2 of 9)
Questions

Describe the principles of normalization in relational


databases and discuss the advantages and
disadvantages it offers
Contrast INNER JOIN, LEFT JOIN, and RIGHT JOIN
operations in SQL, highlighting their distinct
functionalities
Discuss the considerations and trade-offs involved in
choosing between a relational database and a NoSQL
database for a particular application scenario
Define a self-join in SQL and illustrate its usage with an
example query
Describe the significance of a primary key in relational
databases, highlighting its differences from a unique
key
Write an SQL query that utilizes an INNER JOIN to
retrieve customer information along with their
associated orders from two tables.
Day 15-17
Non-Relational Databases
(NoSQL)
Topic to Cover

Introduction to NoSQL databases


Types of NoSQL databases: Document-based, Key-
Value, Column-Family, and Graph
Schema flexibility in NoSQL databases.

Resources

What is NoSQL
NoSQL Databases: An Overvie
Introduction to NoSQL Database
CAP Theorem Explained
Questions

Outline the fundamental characteristics that


differentiate NoSQL databases from relational
databases
Explore the importance of schema flexibility in NoSQL
databases and offer an example to illustrate its
significance
Provide a practical scenario where a document-based
NoSQL database such as MongoDB would be a fitting
solution
Define eventual consistency in NoSQL databases and
elaborate on its significance in distributed systems
Describe sharding in NoSQL databases and its role in
enhancing scalability, along with a scenario where
sharding would be advantageous
Justify the selection of MongoDB as the database
system for a content management system supporting
articles with diverse structures, and offer a sample
schema design.
Day 18-21
Advanced Database Concepts
Topic to Cover

ACID Propertie
Database sharding and partitionin
Database indexin
Concurrency Control

Resources

ACID Properties in DBMS - GeeksforGeek


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

Describe the ACID properties and their role in


maintaining data integrity within database
transactions
Explore the compromises between optimizing for
strong ACID properties and maximizing performance in
a database system
Explain the concepts of database sharding and
partitioning and their impact on scalability
Identify the important considerations when choosing a
sharding key for a database table
Contrast B-tree indexes and hash indexes, discussing
scenarios where each is preferable
Define deadlock, offer an example, and suggest
approaches to prevent or resolve deadlocks
Analyze the trade-offs between maintaining strong
ACID properties and optimizing performance in the
database of a high-traffic e-commerce site.
Day 21-24
REST API
Topic to Cover

HTTP Verb
Request and Response Forma
Statelessnes
Security and Authentication

Resources

https://www.restapitutorial.com
https://www.youtube.com/watch?v=lsMQRaeKND
https://www.geeksforgeeks.org/rest-api-introduction
https://rapidapi.com/learn/rest
Questions

Describe the roles of HTTP verbs (GET, POST, PUT,


DELETE) in the context of RESTful APIs
Develop a basic Express.js server featuring routes to
handle POST, PUT, and DELETE requests
Describe the components of an HTTP response,
including status codes and response bodies
Devise an API response format for a user registration
endpoint, including a success message and a user ID
Explore how statelessness enhances scalability and
simplicity in API design
Investigate API key authentication, covering key
generation, sending in requests, and server-side
validation
Differentiate between authentication and authorization
in the context of security systems.
Day 25-29
Websockets and WebHooks
Topic to Cover

Implementation of WebHook
Websocket protocol
Use cases

Resources

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

Provide a scenario demonstrating when webhooks are


an appropriate communication solution
Discuss the typical methods employed by webhooks
for data transmission between services
Explain the mechanics of real-time data exchange in a
WebSocket-based application
Discuss the reasons why WebSockets could be
favored 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
Task Model: Define a schema for tasks and set up a
MongoDB collection for tasks
API Endpoints: Create API endpoints for creating,
reading, updating, and deleting tasks
CRUD Operations: Implement basic CRUD operations
for tasks in your database.

User Tasks and Authorization


User-Specific Tasks: Ensure that tasks are associated
with the authenticated user
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