## Programming Language Fundamentals
Introduction to Java
Input Output and Data Types
Operators
Conditions
Loops
Pattern Problems
Functions
1D and 2D Arrays
Strings
Memory Management
Basic OOP for Problem Solving
-----------------------------------------------------------------------
## Data Structures and Algorithms
Time and Space Complexity
Array Problem Solving Techniques
Bit Manipulation
Maths for Problem Solving
Recursion
Backtracking
Sorting
Searching(Binary Search)
Two Pointers
Hashing
Strings and Pattern Matching
Data Structures
Linked Lists
Stacks
Queues and Deques
Trees and BST
Tries
Heaps
Advanced Problem Solving Techniques
Greedy
Dynamic Programming
Graphs
------------------------------------------------------------------------------
## SQL
Relational Model
CRUD
Joins
Aggregation
Subqueries
Views
Transactions
Indexing
-------------------------------------------------------------------------------
## Fullstack Engineering
HTML, CSS, Javascript
Advanced HTML, CSS Case Studies
Advanced JS Concepts (OOP and Concurrency) and Popular Interview Questions
JS for Web Dev (DOM Manipulation, Event Handling)
Design Patterns
Git
React
Redux
How Internet Works (TCP, UDP, HTTP, Layering Architecture)
API Design
Deployment
Frontend LLD and Machine Coding Case Studies
Testing
MongoDB
NodeJS
ExpressJS
Backend Architecture
Capstone Projects
Or
## Backend Engineering
OOP
Multithreading
Adv Lang Concepts and Popular Interview Questions
SOLID
Design Patterns
UML Diagrams
Schema Design
How Internet Works (TCP, UDP, HTTP, Layering Architecture)
API Design
MVC
Backend LLD and Machine Coding Case Studies
Unit Testing
ORM
Deployment
Git
Spring Boot
Project Interview Questions (Spring/Hibernate)
Capstone Projects (include advance things like implementing Payment API)
-----------------------------------------------------------------------------------
---------