Full Domain
Full Domain
20
TABLE OF
1. Basics........................................... 20
8. Theory.......................................... 20
22. Good to Know.............................21
W12: HOSTING......................................22
CONTENT 1. Nginx............................................ 22
19. SSH............................................ 22
23. SSL.............................................22
W03: JAVASCRIPT........................... 3 25. Linux........................................... 22
1. THEORY............................................... 3 W12: GIT................................................ 23
35. VS......................................................... 4 27. THEORY.....................................23
W04: NODE.JS EXPRESS...............5 55. GOOD TO KNOW...................... 23
THEORY................................................... 5 W13: DS & Algorithms......................... 24
58. Algorithms...................................24
18. HTTP....................................................5
64. Problems.................................... 24
19. EXPRESS...........................................6
65. Complexity Analysis................... 24
31. Core Express.................................. 6
66. Asymptotic Notations..................24
32. EJS....................................................... 6 67. Memory.......................................24
35. VS..........................................................6 72. Data Structures...........................24
W05: MONGODB..............................8 78. OTHERS.....................................25
1. THEORY.........................................8 W14: DS & Algorithms......................... 26
42. VS...............................................10 82. Algorithms...................................26
48. INTERVIEW QUESTION............ 11 83. Data Structures...........................26
56. GOOD TO KNOW.......................11 W15: DS & Algorithms......................... 27
FD 01: HTML & CSS..............................12 89. Data Structures...........................27
1. HTML............................................12 96. Algorithms...................................28
9. VS................................................ 12 106. Question................................... 28
13. GOOD TO KNOW...................... 12 General.............................................28
17. CSS............................................ 12 W16: SQL: Postgres............................. 29
FD 01: JAVASCRIPT............................. 13 1. Theory.......................................... 29
1. DOM............................................. 13 13. Postgres..................................... 29
9. THEORY.......................................13 19. Commands................................. 29
56. VS...............................................15 23. Functions.................................... 29
57. GOOD TO KNOW...................... 15 44. Other theory and functions......... 31
FD 01: NODE.JS EXPRESS..................16 48. Pendings.....................................31
THEORY...........................................16 W17 REACT...........................................32
64. HTTP.......................................... 16 1. Set up........................................... 32
65. EXPRESS...................................17 8. Theory.......................................... 32
77. Core Express..............................17 39. Good to Know.............................34
78. EJS............................................. 18 W18 REACT...........................................35
81. VS...............................................18 59. OTHERS.....................................35
W07: GIT................................................ 19 W19 REDUX...........................................36
1. THEORY.......................................19 60. Theory........................................ 36
23. GOOD TO KNOW...................... 19 83. Other...........................................36
92. JWT............................................ 36 149. Algorithms.................................54
FD 02: JAVASCRIPT............................. 37 159. Question................................... 54
61. DOM........................................... 37 General.............................................54
69. Architecture................................ 37 W21: MICROSERVICES........................55
70. THEORY.....................................37 Concepts & Theory...........................55
119. VS............................................. 39 W21: Docker...........................................57
120. GOOD TO KNOW.................... 40 13. Commands................................. 57
FD 02: NODE.JS EXPRESS..................41 W21: Kubernetes.................................. 59
THEORY...........................................41 64. Security.......................................60
117. HTTP........................................ 42 69. Yaml............................................61
121. EXPRESS.................................42 74. Commands k8s...........................61
132. Core Express............................43 79. Good to know............................. 61
133. EJS........................................... 43 W21: Message Broker.......................... 62
136. VS.............................................43 Kafka................................................ 62
FD 02: MONGODB................................ 44 RabbitMQ......................................... 62
72. THEORY.....................................44 gRPC................................................ 63
114. VS............................................. 47 W21: MICROSERVICES 2.....................64
120. INTERVIEW QUESTION.......... 47 Design Patterns................................ 64
128. GOOD TO KNOW.................... 47 TYPESCRIPT......................................... 66
FD 02: REACT....................................... 48 Git Repo........................................... 66
101. Set up....................................... 48 Theory.............................................. 66
108. Theory...................................... 48 NEXT.JS................................................. 67
139. Good to Know...........................50 17. Theory........................................ 67
145. Week 2..................................... 50 CLEAN CODE........................................69
160. OTHERS...................................50 7. SOLID Design Principles.............. 69
FD 02: DS & Algorithms....................... 51 1. Things...........................................69
111. Algorithms................................. 51 15. Related Topics............................ 69
117. Problems...................................51 17. Rules.......................................... 69
118. Complexity Analysis..................51 19. Videos.........................................70
119. Asymptotic Notations................ 51 OTHERS.................................................71
120. Memory.....................................51 1. SASS............................................ 71
125. Data Structures.........................51 4. REST API..................................... 71
131. OTHERS...................................52 17. CI CD (git)...................................71
Week 2............................................. 52 18. JSDoc......................................... 71
135. Algorithms.................................52
136. Data Structures.........................52
Week 3............................................. 53
142. Data Structures.........................53
W03:
c. Reduce
d. Find
e. Sort
JAVASCRIPT
f. Foreach
g. Push
h. Pop
1. THEORY i. Shift
2. Function j. Unshift
k. Slice
a. Function Statement
b. Function Expression
l. Splice
c. Function Declaration
14. Object Methods
a. freeze
d. Anonymous function
e. Named Function Expression
15. Callback and callback hell
f. Functional Programing
16. Promise
a. Promise.all
g. Higher order function
b. Promise.allSettled
h. First class function
c. Promise.race
i. Pure Function
d. Thenable
j. Function composition
e. Finally
k. IIFE
f. Catch
3. Advantages and disadvantages of
JS 17. Async await
4. Scope, Lexical scope 18. Spread and Rest Operator
5. Prototype 19. DOM, BOM
6. Closure 20. Call stack
a. Disadvantage
21. Event loop
b. Uses
22. ES6 and its features
a. Let, Var, Const
7. Garbage collection
b. Ternary operator
8. Hoisting
c. Arrow function
a. TDZ
d. Template literals
b. let, const vs var
e. Default Parameters
c. Function vs arrow function
f. Classes
9. Call Apply Bind
g. Modules
10. This Keyword
h. Iterators
11. Temporal Dead Zone
12. String Methods i. Object & Array Destructuring
a. Length
j. SetInterval
b. toUpperCase, LowerCase
c. Trim
23. Primitive and non-primitive
a. Pass by value and pass by
d. Pad
e. charAt
reference
f. Split
24. Message queue
g. Concat
25. Life
h. substring
26. Generator
13. Array Methods 27. Prototype
a. Prototype chain
a. Map
b. Prototypal Inheritance
b. Filter
28. JavaScript is dynamically types
29. Currying
30. Type Casting
a. Implicite (Coercion)
b. Explicit (Conversion)
31. Microtask queue
32. Shallow copy
33. Deep copy
34. Immutable
35. VS
a. == and ===
b. Let, const, var
c. Synchronous vs
asynchronous
d. While vs do while
e. Foreach Vs Map
f. Parameters, Arguments
g. for in, for of
h. Undefined, Null
i. Keywords & Identifiers
j. Type casting vs Type coercion
W04:
a. Events emitter
b. Http module
17. Streams
NODE.JS
a. type of streams
i. writable, readable,
duplex, transform
EXPRESS
b. createReadStream()
c. pipe()
18. HTTP
a. https
THEORY b. How does it work?
1. What is Node.js c. request response cycle
2. why v8 Engine d. Stateless protocol
3. Advantages & Disadvantages of i. Local storage, Sessions
Node.js and Cookies
4. How node works e. Request
5. Node Module System i. General (start line)
6. REPL, Cli 1. method/target/ve
7. NPX rsion
8. Globals ii. header
a. __dirname iii. body
b. __filename f. Response
c. Module i. General (start line)
d. Process 1. version/statuscod
9. Modules e/statustext
a. Core Modules. ii. header
b. local Modules. 1. content type
c. Third-party Modules. iii. body
d. module.exports:{} 1. requested
e. require resource
f. ESM g. HTTP Methods
i. import and export i. GET
10. NPM ii. POST
a. local and global iii. PUT
b. npm init iv. DELETE
c. npm install or i h. Idempotent
11. Nodemon i. Headers
a. scripts j. Status code
i. start i. 1xx: Informational
ii. dev ii. 2xx: Success
b. npm run dev 1. 200 - Success
12. package.json 2. 201 - Success and
13. package-lock.json created
14. Event loop iii. 3xx: Redirect
15. Event Queue 1. 301: moved to
16. Events new URL
2. 304: not changed 2. multer
iv. 4xx: Client Error iii. Router-level
1. 401: middleware
Unauthorised iv. Built-in middleware
2. 402: 402 v. Error-handling
Payment middleware
Required 1. err.statusCode
3. 403: Forbidden 2. err.message
4. 404: page not d. req, res, next
found e. next()
v. 5xx: Server Error f. app.use in middleware
k. MIME type g. passing two middleware
l. HTTP v2 28. Routing
m. TCP and IP a. router
MONGODB
b. db.createCollection(collection
Name)
c. show collections
d. renaming Collection
1. THEORY 21. Documents
2. SQL(relational) vs a. adding new Documents
3. NoSQL () b. Nested Documents
4. What is MongoDB? i. advantage
5. Run on JS Engine 22. Inserting Document
6. How does mongoDB work? 23. Insert One and Many
7. Non-relational Document based 24. what are the additional methods
8. Advantage and Disadvantages used for inserting
9. BSON 25. Finding / Querying
10. MongoDB Structure a. find()
11.
i. iterate (it)
12. MongoDB architectureJSON vs ii. pretty()
BSON b. findOne({ filter })
13. MongoDB shell c. finding In nested Array
14. CRUD Operations i. “field.field”
15. Cursor, Iterate a Cursor ii. match
16. TTL - Time to Leave iii. exact match
a. Partial TTL
iv. multiple match
17. Maximum Document Size : 16Mb d. Array
a. GridFS
i. finding in specific order
18. Data types in MongoDB (BSON) ii. without regard to order
a. ObjectId
iii. query by array index
i. timestamp iv. query by array length
ii. random value e. Projection
iii. incrementing counter i. explicitly include fields
b. String
f. Null, $type: 10, $exists
c. Int, longInt, Double
26. Filtering
d. Array, Object
a. find( filter )
e. Boolean
b. find( {filter}, {fieldsToGet} )
f. Date 27. Method Chaining
g. Decimal128
a. count()
h. Regex
b. limit()
i. Javascript c. sort( 1 or -1 )
i. with scope d. skip()
ii. without scope 28. Operators (denoted by $)
j. MinKey, MaxKey a. {$gt: number} $gte
k. Binary data
b. $lt, $lte
19. Cursor c. $eq, $ne
a. cursor methods
d. $or $and $not
b. - toArray
e. $in: [1,2,3], $nin: [1,2] 31. bulkWrite()
f. $all a. ordered: false
i. $slice disadvantages
j. $size 32. Commands
k. $inc: 1, $inc: -1 a. mongosh
l. $pull, $push b. db
q. $expr b. advantages
s. $rename d. distinct
u. $mul i. $match
v. Array Operator ii. $group
i. $push 1. grouping by
ii. $each 2. -nested field
iii. $pull 3. -multiple field
iv. $pullAll iii. $sort
v. $pop iv. $count
vi. $ v. - other ways to count
vii. $elemMatch vi. - client and server side
29. Deleting counting
a. deleteOne({ field:value }) vii. $limit, $skip
b. deleteMany() viii. $out
c. remove() ix. $project
30. Updating x. $lookup
a. updateOne( {whichObject} , xi. $unwind
{$set: {field: value, field: value} xii. allowDiskUse: true
}) f. “$name” vs ”name”
b. Operators g. Accumulator Operators
schema scaling
b. optional schema f. Zones
c. validation action g. mongos
a. embedding i. scatter-gather
b. referencing 39. Cluster
c. one-to-one a. types of cluster
nodes d. I - Isolation
i. add()
JAVASCRIPT
ii. has()
iii. delete()
b. map
1. DOM i. get ()
2. querySelector
ii. set ()
3. textContent
iii. <mapName>.size
4. addEventListener
iv. iterating
c. object vs map
5. Order of Parsing
d. weekSet()
6. event Propagation
a. event Bubbling
i. features
e. weekMap()
b. event Capturing/ Trickling
a. TDZ c. Promise.all
c. polyfills i. Finally
24. This Keyword j. Catch
25. String Methods k. immutable
a. Length l. promisify
b. toUpperCase, LowerCase m. pros and cons
e. charAt promise
f. Split b. error handling in async await
b. Filter calls
c. Reduce 33. Spread and Rest Operator
d. Find 34. DOM, BOM
e. Sort 35. Call stack
f. Foreach 36. Event loop
g. Push 37. ES6 and its features
h. Pop a. Let, Var, Const
d. - break reference
e. - continue 39. Message queue
f. for…in 40. Life
g. for…of 41. Generator
29. Callback 42. Prototype
a. callback hell a. Prototype chain
b. condition to exit
sequence
e. use
b. Explicit (Conversion)
d. Mutable vs Immutable
e. Object.freeze()
49. TCP/IP
50. DNS
51. IIFE
a. pros and cons
56. VS
a. == and ===
b. Let, const, var
c. Synchronous vs
asynchronous
d. While vs do while
e. Foreach Vs Map
f. Parameters, Arguments
g. for in, for of
h. Undefined, Null
i. Keywords & Identifiers
j. Type casting vs Type coercion
k. textContent vs innerText
l. identifiers vs variables
m. defer vs async
FD 01:
a. Events emitter
b. Http module
61. Streams
NODE.JS
a. type of streams
i. writable, readable,
duplex, transform
EXPRESS
b. createReadStream()
c. pipe()
d. Buffers
62. Cron-job
a. * * * * *
THEORY
st
b. 1 * = second
45. What is Node.js
nd
c. 2 * = minute
46. why v8 Engine
rd
d. 3 * = hour
47. Advantages & Disadvantages of
th
e. 4 * = day of month
Node.js
th
f. 5 * = month
48. How node works
th
g. 6 * = day of week
49. Node Module System
h. or, range selector
50. REPL, Cli
51. NPX i. time zone
52. Globals j. validation
a. __dirname
63. CORS
a. preflight request
b. __filename
c. Module
i. header
d. Process
ii. accept-control-allow-or
53. Modules igin: *
a. Core Modules.
iii. accept-control-allow-m
b. local Modules.
ethods: *
c. Third-party Modules.
iv.
d. module.exports:{} 64. HTTP
e. require a. https
f. ESM b. How does it work?
i. import and export c. request response cycle
54. NPM d. Stateless protocol
a. local and global i. Local storage, Sessions
b. npm init and Cookies
c. npm install or i e. Request
55. Nodemon i. General (start line)
a. scripts 1. method/target/ve
i. start rsion
ii. dev ii. header
b. npm run dev iii. body
56. package.json f. Response
57. package-lock.json i. General (start line)
58. Event loop 1. version/statuscod
59. Event Queue e/statustext
60. Events ii. header
1. content type b. post()
iii. body i. express.urlencode()
1. requested ii. Form vs JS
resource c. put()
g. HTTP Methods d. patch()
i. GET e. delete()
ii. POST f. all()
iii. PUT g. use()
iv. PATCH h. listen()
v. DELETE 68. Static files
vi. HEAD a. public
vii. CONNECT b. express.static()
viii. OPTIONS 69. API
ix. TRACE a. json()
h. Idempotent 70. Params, Query String
i. Headers 71. Route Parameter
j. writeHead vs setHead 72. Query string/url Parameter
k. Status code 73. MIddleware
i. 1xx: Informational a. what is middleware
ii. 2xx: Success b. used for what?
1. 200 - Success c. req, res, next
2. 201 - Success and d. next()
created e. app.use in middleware
iii. 3xx: Redirect f. passing two middleware
1. 301: moved to g. Types of Middleware
new URL i. Application-level
2. 304: not changed middleware
iv. 4xx: Client Error ii. Third party middleware
1. 401: 1. morgan
Unauthorised 2. multer
2. 402: Payment iii. Router-level
Required middleware
3. 403: Forbidden iv. Built-in middleware
4. 404: Page not v. Error-handling
found middleware
v. 5xx: Server Error 1. err.statusCode
l. MIME type 2. err.message
m. HTTP v2 74. Routing
n. TCP and IP a. router
65.EXPRESS b. express.Router()
HOSTING
28. mkdir
29. touch
30. mv
1. Nginx 31. nano
2. Commands 32. more, less
a. systemctl nginx status 33. head, tail
b. restart and reload 34. >, <
3. Contex 35. /
a. Eg: http, events, server a. bin
connection c. dev
6. Firewall
7. DDOS protection
8. K8s IC
9. Sidecar proxy
10. Virtual host
11. Brute force
12. WAF
13. UFW
14. TCP vs UDP
15. Load Balancing
a. Round robin
b. Least connection
c. IP hash
16. Caching
17. Proxy
a. Proxy server
b. Reverse proxy
c. Forward proxy
d. Load balancer vs reverse
proxy
18. Nginx vs Apache
19.SSH
20.How does it work??
21. Private key
22. Public key
23. SSL
24.How does it work??
W12: GIT
○ git branch —all
○ Creating branch
○ Deleting branch
○ git checkout vs git switch
27. THEORY
○ switching b/w branches
28. Centralised Version control system
○ commit id
vs Distributed Version control
○ branch name
system
43. Stashing
29. Config
○ git stash st
30. Working directory
○ git stash apply
31. Staging area
○ git stash drop
32. git init
○ git stash list
33. git clone
44. Merging
34. git status
45. git merge <branchName>
35. git log
46. Types of merging
36. Creating Version
○ fast-forward merge
○ git add file
○ recursive merge
i. git add - - all
ii. git add . i. conflict
47. Git server
○ git commit
○ git remote add <name> <url>
i. -m “<message>”
ii. Commit without i. git remote
staging ii. git remote -v
○ git push <remoteName>
○ commit id
i. check sum <branchName>
○ git push set upstream
ii. content
○ Cloning
1. author details
○ git clone <url>
2. preview details
○ git pull
3. date
○ pull vs pull request?
4. etc..
○ pull vs fetch
iii. sha-1 hash
48. Tags
○ label
○ Simplified
○ branch
○ Annotated
37. touch
○ git tag
38. git log
○ Should Pushing tags
○ git log
49. Forking
○ git log - - all
50. git rebase
○ git log –p -1
51. vim .gitignore
○ git log graph
52. gist
39. git diff
53. ci cd
40. git diff –staged
54. git projects
41. Restore
○ git restore 55. GOOD TO KNOW
○ git restore –staged 56. rebase
42. Branching 57. tree
Algorithms
○ Reasons for memory leak
○ How to debug
70. Big O Notation
○ Linear time complexity
58. Algorithms
○ Constant time complexity
○ Search
○ Quadratic time complexity
○ Binary Search(recursive also)
○ Qubic
○ Linear Search
○ Logarithmic complexity
59. Recursion
○ Exponential complexity
60. Iterative & recursive
61. Virtual memory 71. Operations in normal array
○ Init
62. Amortised residing
○ Set
63. Dynamic programing
○ Get
○ Memoize approach
○ Traverse
○ Bottom up approach
○ Insert
64. Problems
○ D45elete
○ Factorial, fibonacci, prime
number (with and without
72. Data Structures
recursion) 73. What is DS?
74. Advantages and Disadvantages
65. Complexity Analysis
75. Examples
○ Time complexity
○ DOM
○ Space complexity
○ Undu & Redo
66. Asymptotic Notations ○ Os job scheduling
○ Ranking 76. Dynamic Array
○ Big O notation ○ It’s working and memory
○ Omega Notation allocation?
○ Theta Notation ○ Set
67. Memory 77. Linked List
68. Memory Allocation ○ Advantages and
○ Bit vs byte disadvantages
○ Memory address ○ Applications
○ Contiguous memory ○ Creating a linked list
allocation ○ Operation
○ Non-contiguous memory i. Init
allocation ii. Set
○ Stack iii. Get
i. Primitive types are iv. Traverse
stored in stack v. Insert
○ Heap vi. Delete
i. Reference type are ○ Singly Linked List
stored in heap ○ Double linked list
ii. Eg: Arr, fun, obj ○ Circular linked list
69. Memory Leak ○ Array vs linked list
78. OTHERS ii. Full binary tree
iii. Perfect binary tree
79. Build in DS in JS
○ Heap
○ Array
i. Features
i. Push, pop, shift, unshift,
ii. Min Heap
forEach, map, filter,
1. Creating Heap
reduce, concat, slice,
2. Insrt
splice ,sort()
3. Dt
ii. some(), every(), find(),
iii. Max Heap
findIndex(), fill(), flat(),
reverse(), sort()
○ Objects
i. Insert, Remove, Access,
Search,
ii. Object.keys(),
Object.values(),
Object.entries()
○ Sets
i. set, has, delete, size,
clear
○ Maps
i. set, has, delete, size,
clear
○ Array vs Set
○ Object vs Map
○ Strings
i. Primitive and object
string
ii. Escape char
iii. ASCII
1. 32 - Space
2. 48-57 == (0-9)
3. 65-90 == (A-Z)
4. 97-122 == (a-z)
iv. Unicode
v. UTF-8
80. Custom DS
○ Stacks
○ Queue
○ Circular queues
○ Linked lists
○ Hash tables
○ Trees
○ Graphs
81. Trees
○ Binary tree
i. Complete binary tree
W14: DS &
i. Input restricted
ii. Output restricted
○ - Blocking Queue
Algorithms
○ - Concurrent Queue
○ - Delay Queue
86. Hash Table
○ Searching O(1)
82. Algorithms
○ Hash function
○ Sorting
○ Collision
○ Bubble sort
○ Dynamic restructuring
○ Insertion sort
○ Uses
○ Quick sort
○ Operations
i. Divide and conquer
○ Init
ii. Partition method
○ Insert
iii. Pivot selection
○ Search
iv. Last, first
○ Delete
v. average/median
○ Traverser
○ Heap sort
○ Please Note
○ Merge sort
○ Week set, week map
i. Divide and conquer
○ Collisions Handling
○ Merge vs Quick sort
○ - Separate Chaining
83. Data Structures
○ - Open Addressing
84. Stacks
i. Linear Probing
○ LIFO
ii. Quadratic Probing
○ Push, pop
iii. Double Hashing
○ Stack underflow
iv. Clustering
○ Stack overflow
○ - Cuckoo hashing
○ Use cases
○ - Robin Hood hashing
○ Types of Stack
87. SHA: Secure Hashing Algorithm
○ Linear Stack
○ Dynamic Stack
○ Array-based
○ Linked list based
85. Queue
○ FIFO
○ Enqueue
○ Dequeue
○ Peek
○ Priority queue
○ Circular queue
○ Uses
○ Types of Queue
○ - Linear Queue
○ - Circular Queue
○ - Priority Queue
○ - DEqueue (Double ended
queue)
W15: DS &
○ - B Tree
○ - B+ Tree
○ Merkle Tree
Algorithms
○ Red-black tree vs AVL
93. Heap
○ Min Heap
88. Linear, non-linear, hierarchical i. To get value of
89. Data Structures ii. - Left child
90. Tree iii. - Right child
○ Features iv. - Parent
○ Uses
v. Operations
○ parent, child, root, leaf,
vi. - Init/ Heapify
sibling, ancestor, descendent, vii. - Insert
path, distance, degree, dept, viii. - Delete
height,edge,subtree ○ Max Heap
○ Types of trees on nodes
○ Heapfity
○ - Binary tree
i. Bottom-up
○ - Ternary tree
ii. Top-down
○ - K-array tree
○ DEPQ
○ - Threaded binary tree
94. Trie
○ Types of trees on structure
○ String vs Trie
○ Operations
○ - Complete tree
○ - Init
○ - Full tree
○ - Insertion
○ - Perfect tre
○ - Delete
○ - Degrenarted
○ - Search
i. Left-skew
○ Prefix and Suffix tree
ii. Right-skew
○ - terminator char
91. Binary Search Tree (BST)
○ Compressed Trie
○ BST vs BT
○ - Radix Tree (Patricia Trie)
○ Uses
○ Balanced vs unbalanced tree
95. Graph
○ Vertex, Edge
○ Properties of BST
○ - Adjacency list, matrix
○ Operations
○ Types
○ - Inserting
○ - Unidirectional (Direct
○ - Deletion
○ - Traversal
graph)
○ - Bidirectional (Un DIrected
i. DFS
ii. - InOrder graph)
○ - Cyclic
iii. - PreOrder
○ - Disconnected
iv. - PostOrder
○ - Weighted Graph
v. BFS
○ - Unweighted Graph
92. Balanced Search Tree
○ - Bipartite Graph
○ AVL tree
○ Traversal
○ Red-black tree
○ Prefix tree
i. BFS
○ M-way search tree
ii. DFS
○ River size problem 16. Sparse matrices
96. Algorithms 17. Disadvantages of implementing
97. Greedy method queues using arrays
98. Kruskal's Algorithm 18. Void pointer
99. Prim's Algorithm 19. Lexical analysis
100. Dijkstra's Algorithm a. Lexeme
101. Bellman-Ford Algorithm b. Pattern
102. Topological Sorting c. Token
103. Floyd-Warshall Algorithm
104. Bipartite Graph Checking
105. Max Flow (Ford-Fulkerson
Algorithm)
106. Question
107. Graph vs Tree
108. Forest (in Tree)
109. Forest > Graph > Tree > Linked list
110. Operators
○ Binary operators
○ Priority
○ Infix
○ Prefix (Polish notation)
○ Postfix (Reverse Polish
notation)
General
1. How does Logarithms work
2. File structure vs Data Structure
3. Where is the DS used?
4. Void vs null
5. Dynamic data structure
a. Uses
b. Example
6. Dynamic memory management/
allocations
7. Heap be used over a stack
8. Data abstraction
9. Post fix expression
10. Signed number
11. Pointers in DS
a. Uses
12. Huffman’s algorithm working
13. What is recursive algorithm
a. Divide and conquer on
recursion
14. Which is the fastest sorting
algorithm available?
15. Multi linked
W16: SQL:
b. NOT NULL
c. PRIMARY KEY
i. as UUID
Postgres
d. FOREIGN KEY
e. CHECK (<condition>)
f. - Adding & removing
1. Theory constraints after creating
2. SQL vs NoSQL (Relational vs table
non-relational) 19. Commands
3. Web-scaled a. list db
4. When to use SQL and NoSQL b. to connect
5. Expression, Statement, Operators c. list tables
6. Data types SQL d. Move to super
a. null, bit e. list specific table
b. int, real / float f. List current table
c. char, varchar, text 20. Creating
d. boolean a. Database
e. date, datetime, timestamp b. Table
f. xml/json 21. Drop
g. – char vs varchar vs text a. Drop DB
h. – datetime vs timestamp b. Drop Table
i. – JSON vs JSONB c. Drop constraints
7. Operators 22. Commands
a. Arithmetic, Logical, i. – or /* */
Comparison, Bitwise b. Database migration
8. Primitives: Integer, Numeric, String, i. Add, Delete, Migration
Boolean ii. Up migration
9. Structured: Date/Time, Array, iii. Dow migration
Range / Multirange, UUID 23. Functions
10. Document: JSON/JSONB, XML, a. SELECT
Key-value (Hstore) i. LIMIT
11. Geometry: Point, Line, Circle, ii. FETCH
Polygon iii. OFFSET
12. Customizations: Composite, iv. AS
Custom Types v. DISTINCT
13. Postgres vi. GROUP BY
14. Forks 1. HAVING
15. client/server model 2. GROUPING SETS
16. Data types Unique to Postgres 3. ROLLUP
a. interval 4. CUBE
b. point vii. Having vs Where
c. bigserial viii. Limit vs Fetch
d. etc… b. FROM
17. Database cluster c. WHERE
18. Constraints i. AND, OR
a. UNIQUE ii. LIKE, ILIKE
iii. BETWEEN b. INITCAP , LEFT , RIGHT ,
iv. IN CONCAT , ABS , CEIL , FLOOR,
v. IS NULL, IS NOT NULL c. UPPER AND LOWER in psql.
d. ORDER BY 29. Aggregate vs Scalar
i. DESC, ASC 30. Window function
e. DELETE a. OVER
f. DELETING FOREIGN KEY b. - PARTITION BY, RANK, LEAD,
i. CASCADE LAG
g. UPDATE c. CASE
i. SET 31. SQL Commands
h. RENAME COLUMN a. DDL
i. JOIN i. CREATE, ALTER, DROP,
i. INNER JOIN TRUNCATE
1. ON ii. DROP vs TRUNCATE
ii. LEFT JOIN b. DML
iii. RIGHT JOIN i. INSERT, SELECT,
iv. FULL JOIN (FULL UPDATE, DELETE
OUTER JOIN) c. DCL
v. SELF JOIN GRANT, REVOKE
vi. CROSS JOIN d. TCL
vii. NATURAL JOIN i. COMMIT
j. VIEWS ii. ROLLBACK
i. Pros and Cons iii. SAVE POINT
ii. CREATE VIEW e. DQL
iii. Materialized View i. SELECT
1. Write 32. 3-Schema architecture
amplification a. Internal level
k. UNION b. Conceptual level
l. COALESCE c. External level
m. NULLIF 33. BIGINT VS BIGSERIAL
n. Index 34. Combining queries
i. multi index a. UNION, UNION ALL
24. AUTO_INCREMENT b. INTERSECT, INTERSECT ALL
25. ON CONFLICT c. EXCEPT, EXCEPT ALL
a. DO NOTHING 35. Normalisation
b. Upserting a. Levels
c. - DO UPDATE i. 1NF, 2NF, 3NF etc..
i. EXCLUDED ii. BCNF
26. Date functions b. Anomalies
a. INTERVAL vs AGE c. - Insertion anomalies
27. Aggregate functions i. Data redundancy
a. AVG, MIN, MAX, SUM, ii. Missing data
ROUND, COUNT, CONCAT d. - Deletion anomalies
28. Scalar Functions i. Losing data
a. LCASE, CASE, LEN, MID, e. - Updation anomalies
ROUND, NOW, FORMAT , i. inconsistency
ii. Updating values on so 44. Other theory and functions
many records 45. COPY
unnecessarily 46. OLTP
36. Relationship 47. MUCC
a. one to one 48. Pendings
b. one to many 49. Delete vs truncate
c. many to may 50. candidate key vs super key
37. Transaction & ACID 51. stored procedure
38. - Transaction 52. ER diagram.
a. COMMIT 53. Practice nested queries.
b. ROLLBACK
c. SAVE POINT
i. RELEASE SAVEPOINT
d. LOCK
i. Exclusive Locks
(X-Locks)
ii. Shared Locks (S-Locks)
iii. Update Locks (U-Locks)
iv. Intent Locks
v. Read and Write Locks
39. - ACID
a. - Atomicity
b. - Consistency
i. Consistency in data
ii. Consistency in reads
c. - Isolation
i. Read phenomena
ii. - Dirty reads
iii. - Non-repeatable reads
iv. - Phantom reads
1. Serialotions
v. - (Lost updates)
vi. Isolation level
vii. - Read uncommitted
viii. - Read committed
ix. - Repeatable Reads
x. - Transactions are
Serialized
d. - Durability
e. How to implement ACID
properties
40. EXPLAIN
41. Heap Scan
42. Parallel Scan
43. Planner
W17 REACT
e. Importance of making them
pure
f. local mutation
1. Set up 24. JSX
2. npx create-react-app <appName > a. Rules of JSX
b. Fragment
3. components
c. JavaScript in JSX
a. default is App
d. HTML VS JSX
4. rafce, tsrafce
5. calling function on button click 25. Conditional rendering
a. without parameter
26. Key
b. with parameter
27. UI as a tree
a. Render trees
6. Fragments
b. Module Dependency Tree
7. Children Prop
c. Bundler
8. Theory
i. eg: Webpack
9. What is React
ii. Compiling
10. DOM
iii. Loader
a. DOM vs Virtual DOM
iv. Code splitting
b. Reconciliation
28. Rendering steps
i. working
a. Triggering
c. Diffing Algorithm
b. Rendering
d. React Fibre
c. Committing
i. incremental rendering
29. Rerendering
e. Shadow DOM
30. Batching updates
11. Dynamic rendering
31. State
12. props vs state
a. Behaviour
13. Server Side vs Client Side
b. Queueing updates
Rendering in React
c. Updater function
14. Synthetic Events
d. Updating object
15. Life Cycle
e. local var vs state var
16. View Oriented
f. local mutation
17. Memoization
g. Lifting state
18. Pure functions
h. Reducer
19. Strict Mode
32. Declarative vs Imperative UI
20. SPAs vs MPAs
33. Event handlers
21. CSR vs SSR
a. onClick, onSubmit etc…d
22. Static vs Dynamic rendering
b. Stopping propagation
a. ISR, SPA
c. Preventing default
23. Components
34. Lifecycle Methods
a. A React render tree
a. What is Mounting,
i. top-level components
Unmounting
ii. leaf components
b. Phases
b. Props
c. - Mounting phase
i. immutable
i. constructor
c. Forwarding props
ii. render
d. children
iii. getDerivedStateFromP g. useCallback
rops i. sample
iv. componentDidMount ii. useMemo vs
d. - Updating phase useCallback
i. shouldComponentUpd iii. uses
ate h. useContext
ii. componentWillUpdate i. sample
iii. componentDidUpdate i. useReducer
1. getSnapshotBefo j. Create custom hooks
reUpdate i. useDebugValue
e. - Unmounting phase k. useTransition
i. componentWillUnmou l. useDeferredValue
nt m. useId
f. - Error Handling i. sample
i. getDerivedStateFromE n. useImperativeHandle
rror 36. Props
ii. componentDidCatch a. default prop
35. Hooks b. PropDrilling
a. useState c. Children
i. changeValue 37. Components
ii. changeValueWithFunct a. Creating Components
ion b. Controlled vs Uncontrolled
b. useRef Components
i. html i. Inputs
ii. useState vs useRef c. Higher order components
iii. forwardRef d. Pure components
iv. useImperativeHandle 38. React Router
v. flushSync a. install
c. useEffect b. Hooks
i. dependency i. useHistory
ii. return in useEffect ii. useNavigate
iii. useLayoutEffect c. use
d. useMemo d. Link
i. sample i. replace
ii. recache ii. reloadDocument
iii. pros and cons iii. state={}
iv. referential equality iv. - useLocation()
e. useHistory v. NavLink
i. push 1. -isActive
ii. pop 2. end
iii. replace vi. Navigate
iv. Redirect 1. useNavigate
f. useNavigate 2. navigate(-1)
i. navigate() e. Types of Router
1. route i. BrowserRouter
2. -1, 1 ii. HashRouter
iii. HistoryRouter
iv. MemoryRouter
v. StaticRouter
vi. NativeRouter
f. params (:id)
g. cont {<name>} = useParams()
h. useSearchParams
i. Nesting Routes
i. index
ii. location
iii. shared element with
children
iv. outlet
v. - useOutletContext()
vi. Nesting in separate file
vii. useRoute
39. Good to Know
40. Immer
41. Object.entries(e)
42. Icons
43. Experimental Hooks
a. useEffectEvent
b. use
c. useFormStatus
44. useOptimistic
fW18 REACT
56. Babel
a. Transpilation
b. Plugins
a. init state
61. Why, what b. reducers
62. Redux c. extraReducers
63. How redux stores data 79. Redux toolkit
64. Architecture a. Nanoid
65. Store b. Redux Query.
66. pros and cons 80. Normalizing Data
67. Redux store a. Normalized state
68. Middleware b. createEntityAdapter
69. Calling APIs c. shallowEqual, reference
70. React reducer vs Redux equality
71. Store 81. Serializing
a. dispatch
82. Hydrating
b. subscribe
83. redux vs flux
i. unsubscribe 84. saga vs thunk
c. getState
d. replaceReducer
85. Other
e. Store enhancer 86. Immer and the working of Immer
72. Action in redux.
a. Action creator 87. Access store outside of redux
73. Reducer components
a. rules 88. Flux by fb
74. Redux flow 89. Log rocket
90. createAsyncThunk
91. createEntityAdapter
92. createSelector
93. createListenerMiddleware
94. JWT
95. What?
96. Structure
a. Header
b. Payload
75. Redux principles
i. iat
a. Store
ii. exp/eat
b. Action
c. Signature
c. Reducer
97. Authentication working
76. Selectors
98. Pros and cons
a. Memoized selector
99. Expiration Time
77. Middleware
100. Bearer token
a. - Logger, crash reporting
101. Revocation
b. - Perform async tasks
102. refresh token
c. applyMiddleware
103. Authentication vs Authorization
d. Redux Thunk
104. Types of Claims
a. public
b. registered
c. private
FD 02:
g. Interpreter vs Compiler
h. Abstract Syntax Tree
i. Concurrency model
JAVASCRIPT
70. THEORY
71. Data types
a. wrapper objects
i. id a. Function Statement
d. Anonymous function
69. Architecture
e. Named Function Expression
a. Execution context
i. variable environment f. Functional Programing
g. Higher order function
(memory)
h. First class function
ii. Thread of execution
(code) i. Decorator function
iii. - global & local i. use
execution context ii. - count no of function
iv. - phases call
1. Memory iii. - valid data of params
allocation j. Pure function
2. Code execution i. pros and cons
b. Synchronous single threaded ii. rules
app iii. pure vs impure
k. IIFE
c. Call stack
d. Call stack i. pros
75. Advantages and disadvantages of
e. Event loop
i. Callback queue/ task JS
76. Set Map Flat
queue
a. set
ii. Microtask queue
1. mutation i. add, delete, has, clear,
observer kyes, values, entries
iii. Starvation ii. <setName>.size
b. map
iv. Memory Heap
f. Just In Time Compilation
i. get, set, has, delete, a. How does it work?
clear, keys, values, b. mark-and-sweep
f. Promise.race sequence
g. Promise.resolve e. use
NODE.JS
b. Http module
108. Streams
a. type of streams
EXPRESS
i. writable, readable,
duplex, transform
b. createReadStream()
c. pipe()
d. Buffers
THEORY
109. Cron-job
91. What is Node.js
a. * * * * *
92. why v8 Engine
st
b. 1 * = second
93. Advantages & Disadvantages of
nd
c. 2 * = minute
Node.js
rd
d. 3 * = hour
94. How node works
th
e. 4 * = day of month
95. Node Module System
th
f. 5 * = month
96. Concurrency vs parallelism
th
g. 6 * = day of week
97. REPL, Cli
h. or, range selector
a. _
98. NPX
i. time zone
99. Globals
j. validation
110. CORS
a. __dirname
a. preflight request
b. __filename
c. Module
i. header
d. Process
ii. accept-control-allow-or
100. Modules
igin: *
a. Core Modules.
iii. accept-control-allow-m
b. local Modules.
ethods: *
111. Cluster
c. Third-party Modules.
112. Multithreading in node.js
d. module.exports:{}
a. require(‘worker_theads’)
e. require
b. new Worker
f. ESM
113. thread pool
i. import and export
114. worker thread
101. NPM
a. creating worker,
a. local and global
b. parent port
b. npm init
115. cluster vs workerthread
c. npm install or i
116. child process
102. Nodemon
a. methods
a. scripts
b. - fork
i. start
c. - exec
ii. dev
d. - execFile
b. npm run dev
e. - spawn
103. package.json
f. spawn vs fork
104. package-lock.json
105. Event loop
117. HTTP 1. 301: moved to
a. https new URL
b. How does it work? 2. 304: not changed
c. default port iv. 4xx: Client Error
d. request response cycle 1. 401:
e. Stateless protocol Unauthorised
i. Local storage, Sessions 2. 402: Payment
and Cookies Required
f. Request 3. 403: Forbidden
i. General (start line) 4. 404: Page not
1. method/target/ve found
rsion v. 5xx: Server Error
ii. header o. MIME type
iii. body p. HTTP v2
g. Response q. TCP and IP
i. General (start line) 118. XSS
1. version/statuscod 119. CSRF
e/statustext a.referral header
ii. header 120. SQL injection
91. Cursor
MONGODB
a. cursor methods
b. - toArray
c. - forEach
Collection
72. THEORY 92.
a. db
73. SQL(relational) vs b. db.createCollection(collection
74. NoSQL () Name)
75. What is MongoDB? c. show collections
76. Run on JS Engine d. renaming Collection
77. How does mongoDB work? 93. Documents
78. Non-relational Document based a. adding new Documents
79. Advantage and Disadvantages b. Nested Documents
80. BSON i. advantage
81. MongoDB Structure 94. Inserting Document
82. MongoDB architecture 95. Insert One and Many
83. JSON vs BSON 96. what are the additional methods
84. MongoDB shell used for inserting
85. CRUD Operations 97. Finding / Querying
86. Cursor, Iterate a Cursor a. find()
87. Time to Leave i. iterate (it)
88. Maximum Document Size : 16Mb ii. pretty()
a.
b. findOne({ filter })
89. Storage engines c. finding In nested Array
a. types
i. “field.field”
i. WiredTiger engine ii. match
ii. In-memory engine iii. exact match
iii. MMAPv1 iv. multiple match
b. GridFS
d. Array
c. Journal
i. finding in specific order
90. Data types in MongoDB (BSON) ii. without regard to order
a. ObjectId
iii. query by array index
i. timestamp iv. query by array length
ii. random value e. Projection
iii. incrementing counter i. explicitly include fields
b. String
f. Null, $type: 10, $exists
c. Int, longInt, Double
98. Filtering
d. Array, Object
a. find( filter )
e. Boolean
b. find( {filter}, {fieldsToGet} )
f. Date 99. Method Chaining
g. Decimal128
a. count()
h. Regex
b. limit()
i. Javascript c. sort( 1 or -1 )
i. with scope d. skip()
ii. without scope
100. Operators (denoted by $) e. incrementing &
a. {$gt: number} $gte decrementing
b. $lt, $lte f. adding and remove from
c. $eq, $ne array
d. $or $and $not g. upsert
m. $each [ 1, 2 ] a. mongosh
n. $eq, $ne b. db
p. $exists d. db.stats
s. $rename b. advantages
u. $mul d. distinct
schema scaling
b. optional schema f. Zones
c. validation action g. mongos
a. embedding i. scatter-gather
b. referencing 111. Cluster
c. one-to-one a. types of cluster
REACT
pure
f. local mutation
128. JSX
105. Set up a. Rules of JSX
b. Fragment
106. npx create-react-app <appName >
c. JavaScript in JSX
107. components
d. HTML VS JSX
a. default is App
108. rafce, tsrafce 129. Conditional rendering
109. calling function on button click 130. Key
a. without parameter
131. UI as a tree
a. Render trees
b. with parameter
b. Module Dependency Tree
110. Fragments
c. Bundler
111. Children Prop
i. eg: Webpack
112. Theory
ii. Compiling
113. What is React
iii. Loader
114. DOM
iv. Code splitting
a. DOM vs Virtual DOM
132. Rendering steps
b. Reconciliation
a. Triggering
i. working
b. Rendering
c. Diffing Algorithm
c. Committing
d. React Fibre
133. Rerendering
i. incremental rendering
134. Batching updates
e. Shadow DOM
135. State
115. Dynamic rendering
a. Behaviour
116. props vs state
b. Queueing updates
117. Server Side vs Client Side
c. Updater function
Rendering in React
d. Updating object
118. Synthetic Events
e. local var vs state var
119. Life Cycle
f. local mutation
120. View Oriented
g. Lifting state
121. Memoization
h. Reducer
122. Pure functions
136. Declarative vs Imperative UI
123. Strict Mode
137. Event handlers
124. SPAs vs MPAs
a. onClick, onSubmit etc…d
125. CSR vs SSR
b. Stopping propagation
126. Static vs Dynamic rendering
c. Preventing default
a. ISR, SPA
138. Lifecycle Methods
127. Components
a. What is Mounting,
a. A React render tree
Unmounting
i. top-level components
b. Phases
ii. leaf components
c. - Mounting phase
b. Props
i. constructor
i. immutable
ii. render 2. -1, 1
iii. getDerivedStateFromP g. useCallback
rops i. sample
iv. componentDidMount ii. useMemo vs
d. - Updating phase useCallback
i. shouldComponentUpd iii. uses
ate h. useContext
ii. componentWillUpdate i. sample
iii. componentDidUpdate i. useReducer
1. getSnapshotBefo j. Create custom hooks
reUpdate i. useDebugValue
e. - Unmounting phase k. useTransition
i. componentWillUnmou l. useDeferredValue
nt m. useId
f. - Error Handling i. sample
i. getDerivedStateFromE n. useImperativeHandle
rror 140. Props
ii. componentDidCatch a. default prop
139. Hooks b. PropDrilling
a. useState c. Children
i. changeValue 141. Components
ii. changeValueWithFunct a. Creating Components
ion b. Controlled vs Uncontrolled
b. useRef Components
i. html i. Inputs
ii. useState vs useRef c. Higher order components
iii. forwardRef d. Pure components
iv. useImperativeHandle 142. React Router
v. flushSync a. install
c. useEffect b. Hooks
i. dependency i. useHistory
ii. return in useEffect ii. useNavigate
iii. useLayoutEffect c. use
d. useMemo d. Link
i. sample i. replace
ii. recache ii. reloadDocument
iii. pros and cons iii. state={}
iv. referential equality iv. - useLocation()
e. useHistory v. NavLink
i. push 1. -isActive
ii. pop 2. end
iii. replace vi. Navigate
iv. Redirect 1. useNavigate
f. useNavigate 2. navigate(-1)
i. navigate() e. Types of Router
1. route i. BrowserRouter
ii. HashRouter c. useReducer vs redux
iii. HistoryRouter d. payload
iv. MemoryRouter 157. PropTypes
v. StaticRouter a. types => name, string, any
vi. NativeRouter b. required, optional,
f. params (:id) c. node, element type
g. cont {<name>} = useParams() d. oneof, shape
h. useSearchParams e. PropTypes vs Typescript
i. Nesting Routes 158. useMemo vs useCallback
i. index a. React.Memo vs useMemo
ii. location b. Object reference
iii. shared element with c. Pros and cons of
children memoization
iv. outlet 159. Context API
v. - useOutletContext() a. Provider
vi. Nesting in separate file b. Consumer
vii. useRoute c. useContext
b. use (HMR)
c. useFormStatus e. Tree Shaking
a. Route based
164.
c. React.lazy b. useDebugValue
Algorithms
○ Reasons for memory leak
○ How to debug
123. Big O Notation
○ Linear time complexity
111. Algorithms
○ Constant time complexity
○ Search
○ Quadratic time complexity
○ Binary Search(recursive also)
○ Qubic
○ Linear Search
○ Logarithmic complexity
112. Recursion
○ Exponential complexity
113. Iterative & recursive
124. Operations in normal array
114. Virtual memory
○ Init
115. Amortised residing
○ Set
116. Dynamic programing
○ Get
○ Memoize approach
○ Traverse
○ Bottom up approach
○ Insert
117. Problems
○ Delete
○ Factorial, fibonacci, prime
125. Data Structures
number (with and without
126. What is DS?
recursion)
127. Advantages and Disadvantages
118. Complexity Analysis
128. Examples
○ Time complexity
○ DOM
○ Space complexity
○ Undu & Redo
119. Asymptotic Notations ○ Os job scheduling
○ Ranking 129. Dynamic Array
○ Big O notation ○ It’s working and memory
○ Omega Notation allocation?
○ Theta Notation ○ Set
120. Memory 130. Linked List
121. Memory Allocation ○ Advantages and
○ Bit vs byte disadvantages
○ Memory address ○ Applications
○ Contiguous memory ○ Creating a linked list
allocation ○ Operation
○ Non-contiguous memory i. Init
allocation ii. Set
○ Stack iii. Get
i. Primitive types are iv. Traverse
stored in stack v. Insert
○ Heap vi. Delete
i. Reference type are ○ Singly Linked List
stored in heap ○ Double linked list
ii. Eg: Arr, fun, obj ○ Circular linked list
122. Memory Leak ○ Array vs linked list
131. OTHERS ii. Full binary tree
iii. Perfect binary tree
132. Build in DS in JS
○ Heap
○ Array
i. Features
i. Push, pop, shift, unshift,
ii. Min Heap
forEach, map, filter,
1. Creating Heap
reduce, concat, slice,
2. Insrt
splice ,sort()
3. Dlt
ii. some(), every(), find(),
iii. Max Heap
findIndex(), fill(), flat(),
reverse(), sort()
○ Objects
Week 2
i. Insert, Remove, Access,
Search,
135. Algorithms
ii. Object.keys(), ○ Sorting
Object.values(), ○ Bubble sort
Object.entries() ○ Insertion sort
○ Sets
○ Quick sort
i. add, has, delete, size, i. Divide and conquer
clear ii. Partition method
○ Maps
iii. Pivot selection
i. set, get , has, delete, iv. Last, first
size, clear v. average/median
○ Array vs Set
○ Heap sort
○ Object vs Map
○ Merge sort
○ Strings
i. Divide and conquer
i. Primitive and object ○ Merge vs Quick sort
string 136. Data Structures
ii. Escape char 137. Stacks
○ Stacks ○ Array-based
○ Trees ○ Dequeue
○ Graphs ○ Peek
MICROSERVI
k. Logs
l. Admin processes
50. Load balancing
CES
a. Round robin
b. Least connection
c. IP hash
51. Service Registry
Concepts & Theory 52. Failed fast
39. What is a service? 53. Service Discovery
40. Monolithic arch 54. Tools
a. pros and cons a. os
41. Microservice arch b. language
a. pros and cons c. api management
42. Monolithic vs Microservice i. postman
a. deployment, scalability, d. messaging
reliability, development, i. kafka
flexibility, debugging ii. rabbitMQ
43. Security e. toolkits
44. Cloud computing i. fabric8
a. Public IP address ii. seneca
b. On-premises f. orchestration
c. Iaas, Cass, Pass, Faas (Server i. kubernetes
less computer), Saas ii. Istio
d. Private could g. monitoring
e. Hybridge cloud i. prometheus
45. Scaling ii. logstash
46. Blue Green Deployment h. serverless tools
47. Cloud Native vs Cloud Ready i. claudia
48. Event-Driven Architecture ii. AWS lambda
a. Event producer 55. Principles behind microservices
b. Event broker a. Independent and
c. consumer autonomous service
d. pub/sub b. Scalability
e. eventual consistency c. Decentralisation
f. cache layer d. Resilient services
g. idempotent e. Real time load balancing
49. 12 Factor App f. Availability
a. Codebase g. CICD
b. Dependencies h. Continuous monitoring
c. Config i. Seamless API integration
d. Backing services j. Isolation from failures
e. Build, release, run k. Auto provisioning
f. Processes 56. Security
g. Port binding
a. Defence in depth
mechanism
b. Token and API gateway
c. Distributed tracing
d. First session
e. Mutual SSL
f. OAuth
57. API gateway
a. client performance
b. security
c. rate limiting
d. monitoring logging
e. BFF
58. SOA vs Microservices
59. Communication
a. Types
i. synchronous blocking
communication
ii. asynchronous non
blocking
communication
b. Request response
i. REST over HTTP
ii. RPC
c. Event driven
i. kafka
W21: Docker
b. stop
i. -t
c. prune
2. Architecture i. -f
a. client and server 19. docker logs <container>
b. - server => docker engine a. --follow/ -f
b. C groups b. history
5. Images i. -d
a. Image layers ii. --subnet
b. - base image layer iii. --gateway
c. - instruction layers 22. Manage containers
d. - writable container layer a. Docker container ls || docker
e. Layer caching ps
6. docker run <ubuntu> vs docker pull b. Docker container ls -a ||
<ubuntu> docker ps -a
7. Port mapping c. * Start
8. Data persistence d. * Stop
9. DB Migration e. * Restart
10. Bind mounts. f. * rm
11. run, start, rm g. Docker system prune -a
12. -t, -p 23. Network commands
a. Docker network ls
b. Docker inspect bridge
13. Commands 24. Volume
14. docker init a. types
15. docker tag b. - bind mounts.
16. docker build c. - volume mounts/ named
a. -t
volumes
b. buildx
d. bind vs named mounts
17. docker run e. scratch space
a. --name
f. Volume claim
b. -it
g. docker volume
c. -e
i. create
d. -d
ii. inspect
e. -p
h. docker rm -f
i. port mapping 25. dockerignore
f. --net
26. Docker hub
g. --rm
a. docker
18. docker container i. pull
a. ls
ii. push f. IPvlan
iii. rmi 30. Docker daemon
27. Docker compose
a. docker compose
i. up
ii. down
iii. watch
iv. ps
b. services
i. image
ii. ports
iii. environment
iv. restart
1. always
2. on-failure
3. unless-stopped
v. depends_on
vi. resources
1. limits
2. reservations
vii. volume mapping
1. read only, write
only
c. networks
d. secrets
e. volumes
i. driver
28. Dockerfile
a. FROM
b. COPY
c. WORKDIR
d. RUN
e. CMD
f. EXPOSE
g. ENTRYPOINT
h. ENV
i. ARG
j. USER
k. LABEL
l. RUN VS CMD
29. Docker network
a. Bridge
b. Host
c. None
d. overlay
e. macvlan
W21:
d. scaling
e. Pods life cycle
i. when creating
Kubernetes
ii. when deleting
1. grace period
f. Pod state
i. pending
ii. running
iii. succeeded
iv. failed
v. unknow
vi. CrashLoopBackOff
g. init container
h. Multi container pods
i. sidecar pattern
ii. ambassador pattern
31. aka k8s iii. adaptor pattern
32. pros 44. Container
a. other pros from doc a. Images
33. imperative vs declarative b. - Serial and parallel image
34. self heading/ auto-heal pulls
35. scaling, auto-scale c. - image pull policy
a. HorizontalPodAutoscaler d. Container Environment
36. cluster e. Container Lifecycle Hooks
37. context i. PostStart
38. namespaces ii. PreStop
39. annotation 45. Kubelet
40. namespaces vs annotation vs labels 46. Selectors
41. Finalizers a. metadata > labels
42. Node b. spec > selector
a. master node 47. Workloads
b. worker node a. pod
c. node pool b. replicaSet
d. Node status i. self-heading
e. Node heartbeats ii. template
f. Node controller c. deployment
i. what it does i. replicas
ii. CIDR block ii. revisionHistoryLimit
g. Node topology iii. Strategy
h. Graceful node shutdown 1. RollingUpdate
i. grace period 2. - maxSurge
ii. non-graceful shutdown 3. - maxUnavailable
43. Pod 4. - default
a. communicate via 5. - rollback
b. ephemeral 6. - rollout
c. atomic 7. Recreate
d. daemonSet i. L7
i. daemon controller 53. NodePort
ii. uses 54. k8s Cluster arch
iii. spec > toleration a. Node
e. statefulSet i. container runtime
i. persistent identifier 1. containerized
ii. creation & deletion 2. CRI-O
iii. uses ii. kubelet
iv. headless service iii. kube proxy
f. job, cron job b. Control Plane / Master node
g. replicaSet vs deployment i. kube-api server
h. pods vs deployment ii. kube-scheduler
48. Volumes 1. factor when
a. persistent volume scheduling
i. claim iii. Kube controller
ii. HostPath manager
iii. drawback 1. built-in
iv. reclaim policies controllers
1. delete (default) 2. Node controller
2. retain 3. job controller
v. access modes 4. endpointSlice
1. ReadWriteMany controller
2. ReadOnlyMany 5. serviceAccount
3. ReadWriteOnce controller
vi. states iv. Cloud controller
1. available manager
2. bound v. ETCD
3. released vi. Addons
4. failed vii. - DNS
b. storage class viii. - WEBUI (dashboard)
c. static and dynamic ix. - cluster level logging
49. Objects x. - container resource
50. ConfigMap monitoring
a. static 55. Cluster > Node > pod > container
b. solve static with volume 56. CRI
51. Secret 57. Garbage Collection
a. type 58. Mixed Version Proxy
52. Service 59. KubeCTL
a. clusterIP 60. Minikube
i. port a. rollout
ii. targetPort 61. Open Service Broker.
b. nodePort 62. Ingress
c. load balancer 63. Docker Swarm vs Kubernetes
i. L4 64. Security
ii. round robin 65. Image
d. ingress a. Untrusted registries
b. Vulnerabilities in tools of OS 77. node
or libraries a. k get nodes
66. Authentication & Authorization b. k describe node
67. practices 78. Probes
a. use linear images a. startup
b. image scanning b. readiness
c. don’t use root user c. liveness
d. manage user and permission
i. RBAC 79. Good to know
68. statefulSet
80. grep
a. master
81. docker compose watch -
b. slave
https://www.youtube.com/live/I-htD
VxmFGM?si=5Um3NCnMi0BeAgCz
69. Yaml 82. chroot
70. apiVersion 83. Service Mesh
71. kind
72. metdat
a. name
b. label
c. namespace
73. spec
a. containers
Message
a. Idempotent
b. Two-Phase Commit
c. alt
Broker
15. Persistent storage
16. Steam processing
17. Distributed system
a. leader
Kafka b. follower
1. used as key value but stored as c. zoo keeper
binary in kafka i. Metadata Management
2. default port ii. Leader Election
3. serialisation and deserialization iii. Synchronisation
4. pros and cons iv. Heartbeats and
5. Kafka cluster Timeouts
a. Fault Tolerance
v. Monitoring
b. Scalability
vi. default port
c. Distributed Processing
vii. gossip
6. Kafka Broker 18. long polling
a. topics
19. Kafka Connect
i. compacted topics
b. partitions
i. leader
ii. follower RabbitMQ
iii. replication 84. TCP
1. replication factor 85. HTTPv2
2. key 86. AMQP
c. segments
87. RabbitMQ server
7. Producer a. default port
a. record
b. Exchange Queues
i. header 88. Heartbeats
ii. key 89. Connection pool
iii. value 90. Channels
iv. timestamp a. Multiplexing
b. retention period
b. Concurrency
c. ack /nack
91. Message TTL
i. no acks 92. Message Acknowledgment
ii. leader acks a. Strategies
iii. all acks b. Automatic Acknowledgment
8. Consumer (Ack)
a. Queue vs Pub Sub
c. Positive Acknowledgment
b. Consumer group
d. Negative Acknowledgment
9. Offset (Nack)
10. Connectors e. Rejection with Requeue
11. At most once
f. Rejection without Requeue
93. Exchanges
a. Fanout exchange
i. pros and cons
ii. uses
b. Direct exchange
i. pros and cons
ii. uses
c. Header exchange
i. pros and cons
ii. uses
d. Topics exchange
i. pros and cons
ii. uses
e. Dead Letter Exchanges and
Queues
94. Polyglot persistence
95. Durability
a. Durable Queues
b. Persistence message
c. Combined Durability
d. rabbitMQ
96. Routing Key
97. Request response
a. architecture
b. breaks
c. pros and cons
98. Publish subscribe (pub/sub) model
a. Queue/Channels/Topics
b. Publisher/producer
c. Consumer
d. pros and cons
99. Multiplexing
100. Channel
101. Push model
gRPC
102. why?
103. http
104. protobuffer
105. Unary gRPC
106. Server streaming
107. Client streaming
108. Bidirectional
W21:
16. CI/CD
a. Github actions
b. pros and cons
MICROSERVI
c. running in parallel
d. Testing
CES 2
tests, and end-to-end
tests.
e. Artefact Repository
i. JFrog
Design Patterns 17. Github actions
1. need? a. Workflows
2. Aggregator b. Events
3. API gateway c. Jobs
4. Chained or chain of responsibility d. Actions
5. Asynchronous messaging e. Runners
6. Orchestration vs Choreography f. Using variables in your
7. Database pattern workflows
a. Database Per Service
g. Sharing data between jobs
b. Shared Database
i. artefacts
8. Event sourcing 1. actions/download
9. Branch -artifact
10. Multi-tenant h. Literals
a. pros and cons
i. Contexts
11. CQRS i. uses
12. Circuit breaker ii. Context availability
13. SAGA iii. github context
a. Choreography
iv. env context
b. Orchestration
v. var context
14. Decomposition vi. job context
a. Vine or Strangle
j. Polyglot Persistence
15. Database 18. - commands
a. Decentralised Data
a. name
Management b. on
i. pros and cons i. push
b. Data Consistency in
1. branches
microservice c. jobs
i. Saga Pattern i. needs
ii. Event-Driven ii. steps
Architecture iii. uses
iii. CQRS iv. with
iv. Idempotent Operations v. run
v. Consistency Models vi. if
c. Database per Microservice
vii. matrix
d. Shared Database
viii. outputs
e. Data Virtualization
19. Transactions in microservice
f. Distributed Data Mesh
a. Two-phase commit
i. voting phase
ii. commit phase
iii. pros and cons
b. SAGA
i. backward recovery
ii. forward recovery
c. correlation id
d. imp of logging and
monitoring
TYPESCRIPT
Git Repo
Fore more info click here
Theory
1. What is typescript
2. Disadvantages
3. Statically typed language
4. Compiling project
a. tcs index.ts
5. setting type
a. let age: number 20
6. Types
a. implicit types an explicit
types
b. any type
c. You will lose type case (It's
not recommend to use any)
d. unknown
e. never
f. enum
g. Tuple
7. Objects
a. Readyone
b. Method
c. Specitif valus
d. Return type
8. Type alias
9. Union type
10. Type intersection
11. Literal types
12. Nullalbe type
13. Optione property, element, call
14. Interface
a. Reopening interface
b. Inheritance
15. Class
a. Modifiers
b. Getters and setters
c. Abstand class
d. Overrifdienr
e. Diff b/w class and abstand
class
16. Generics
NEXT.JS
d. layout vs page metadata
e. title metadata
i. absolute
17. Theory ii. default
18. Prerendering iii. template
a. SSG (Static site generation)
21. Pages
a. not-found.tsx & notFound()
b. SSR (Server side rendering)
b. loading.tsx
c. Suspense SSR Arch
c. error.tsx
i. HTML streaming
ii. Selective hydration i. Error boundary
d. ISR (Incremental site
ii. error object
generation) iii. reset
e. RSC (React server
iv. error bubbling
d. File colocation
components)
e. private folder
f. Pros and cons
19. Routing i. _
a. file based
ii. advantages
b. app based
iii. %5F
f. Route groups
c. how to route
d. dynamic route
22. Layout
a. nested layout
e. Catch all segments [...<slug>]
b. route group layout
i. optional catch all [[...]]
f. Navigation
23. Templates
a. why?
i. Link component
b. templates vs layout
1. replace
c. using both
ii. usePathname
1. startWith 24. Component hierarchy
a. Layout > Template > Error
iii. useRouter
1. push() Boundary > Suspense > Erro
2. replace() Boudy (not found) > Page
3. back() 25. Route Handlers
4. forward() 26. RSC (React server component)
g. Parallel Routes
27. API routes
i. slots (@) 28. Rending
a. client side
ii. pros and cons
b. server side
iii. default.tsx
h. Conditional Routes
29. Date fetching
i. Intercepting Routes 30. STyling
i. (.)<route> 31. Optimization
ii. (..)<route>
iii. (..)(..)<route> 32. Layouting
iv. (...)<route> 33. Loading state
20. Routing metadata 34. Error bordering
a. why?
35. SEO
a. Metadata
b. static vs dynamic metadata
c. priority
36. Fetching data
a. Using server comp
b. In parallel
c. Fetch data where It’s used
d. Streaming and suspense
37. Deduplication
38. Caching
a. ISR (Incremental site
generation)
b. {cache: force-cache}
c. {cache: no-store}
d. {next: {revalidate: 60}}
39. Dynamic params
Sequze
1. getters and setters
2. Validations
3. Paranoid
4. Associations
a. one to one, one to many,
many to many
b. hasOne()
c. belongsOne()
CLEAN CODE
1. You are not done when it work
2. Invest the time to spend to write
the program to make the program
clean
3. Clean code what is expect when to
read the code
4. Function should be verb (not noun)
5. Function
a. Every things in the function
should have the same
abstraction
b. Functions should be small
c. Function should not have
CLEAN
more than 3 params
d. Don’t pass boolean to a
function
ARCHITECTU
e. Avoid switch statement
f. The should not any side
effect
RE
g. If a function return void, it 1. Things
should have side effects 2. Dependency Inversion Principle
h. if a function returns a value, it 3. Interface adapters
should not have side effects 4.
6. File should be <100 lines 5. Entities
a. They have no dependency
7. SOLID Design Principles
6. Use cases
8. - Single responsibility
a. they only depend on entities
9. - Open-closed b. Interactor
10. - Liskov substitution c. Interface
11. - Interface segregation 7. Controllers
12. - Dependency inversion 8. Gateway
9. Presenter
10. Devices
11. Web
12. Database
13. UI
14. External Interface
15.Related Topics
16. Dependency Injection
17.Rules
18. Data flow from outside to inside
19.Videos
20. Using Clean Architecture for M…
OTHERS
ii. 201 - Success and
created
c. 3xx: Redirect
1. SASS i. 301: moved to new URL
2. @import ii. 304: not changed
".. /node_modules/bootstrap/scss/bo d. 4xx: Client Error
otstrap"; i. 401: Unauthorised
3. @use & @forward ii. 402: 402 Payment
Required
4. REST API
iii. 403: Forbidden
5. it’s about communication
iv. 404: page not found
6. RESTful
e. 5xx: Server Error
7. pros
14. MIME type
a. simple & standardised
15. HTTP v2
b. scalable & stateless
16. TCP and IP
c. high performance due to
cachings
17.CI CD (git)
8. Request 18. JSDoc
a. General (start line) 19. /**
i. method/target/version * function description
b. operation: get, post, put, * @param {string} description
delete */
c. endpoint 20.Params
d. header 21. Returns
i. API key
ii. authentication data
e. body/ parameter
9. Response
a. General (start line)
i. version/statuscode/stat
ustext
b. header
i. content type
c. body
i. requested resource
10. HTTP Methods
a. GET
b. POST
c. PUT
d. DELETE
11. Idempotent
12. Headers
13. Status code
a. 1xx: Informational
b. 2xx: Success
i. 200 - Success