Acciojob Full Stack Development Week-Wise Syllabus
Acciojob Full Stack Development Week-Wise Syllabus
● Week 1 -
○ Programming Basics
◆ Printing and reading inputs
◆ Datatypes and variables
◆ Space and Time Complexity
○ Arrays and Matrices
◆ Declaration & iteration
◆ Handling Input & printing output
◆ Iterating over arrays
○ Strings
◆ Initialization and basic string methods
◆ Iterating over characters
● Week 2 -
○ Recursion
◆ Basic concept
◆ Simple recursion questions
○ Sorting Algorithms
◆ Definition of Greedy Algorithms (basic intro)
◆ Some example algorithms of maybe min number of coins
◆ Types of Sorting
◆ Merge Sort
◆ Quick Sort
○ Searching
◆ Linear Search
● Week 3 -
○ Binary search
◆ Recursive Binary Search
◆ Iterative Binary Search
◆ Time Complexity
○ Object Oriented Programming Basics
○ Linked List
◆ Linked Lists vs Array time complexities and differences.
◆ Single Linked List
◆ Linked Lists operations
◆ Double Linked List
◆ Circular Linked List
◆ Must Do Questions: Using linked lists for finding sum of 2 long
numbers, cycle detection in linked lists, etc.
● Week 4 -
○ Two Pointers and sliding window
◆ Sliding window question.
◆ Working of two pointer
◆ Time Complexity
○ Stacks, Queues and Deques
◆ LIFO FIFO basic functioning
◆ Implementation using arrays and linked lists
◆ Popular questions like closest larger element using stacks, using
queues to solve some 2D matrix questions like finding islands in a
boolean matrix
● Week 5 -
○ Kadaneʼs Algorithm
◆ Prefix Sum
○ String Algo - KMP
○ Hashing
◆ Full theory including hash functions, collisions, probing, probing
problems, chaining.
◆ Popular questions. Hash sets and HashMaps differences, also discuss
treeMaps and differences
○ Heaps
◆ Introduction - Insert, Delete, find min, max, parent/child indexes
◆ Heap Sort
◆ Types of Heaps (Max & Min)
◆ Build Heap
◆ Popular questions for finding K largest etc.
● Week 6 -
○ Some popular Algorithms
◆ Sieve of Eratosthenes
◆ GCD & LCM
◆ Prefix, postfix infix operation conversion
○ BIt Manipulation
◆ Popular questions. 1 lecture.
○ Recursion Revisited
◆ Theory revisit
◆ Discuss questions like create a group from array summing to K
(questions about choosing combinations and printing permutations )
◆ BackTracking - nQueens, solving Sudoku.
● Week 7 -
○ Trees
◆ Definition of trees, height, Binary Trees, complete trees, balanced
trees, root, leaves, ancestor,
◆ Traversals - 4 types
◆ Binary Search Trees
◆ Implementation
◆ Deletion, insertion, search, ancestor, next maximum, common
ancestor
◆ Problems without balancing
● Week 8 -
○ Graphs
◆ Basic implementation using adjacency list and matrix. Time complexity
in common operations
◆ BFS and DFS with implementation
◆ Common problems on both including bipartite
◆ Cycle detection using back edge and its intuition
◆ Dijkstraʼs Algorithm
◆ Logic and implementation
◆ Using a PriorityQueue
● Week 9 -
○ Dynamic Programming
◆ Problems with recursion, issues of complexity and stack overflow
◆ Tabulation and memoization
◆ Fibonacci, KnapSack Problem, Coin Change problem, Matrix
multiplication number of operations.
● Week 10 and 11 -
○ DSA Revision and more practice questions on DSA - all topics
○ SQL - basics, joins, group by , having, normalization
○ Low Level System Design
———————————————————————————————————————
——————————————————— DSA + OOP PROJECT
● Week 12 -
○ HTML
◆ What is frontend? Why it is important?
◆ Common HTML tags and their usage. Viewing webpages in browsers
◆ HTML Tables and Forms. Discussion on more tags & display
properties.
● Week 13 -
○ CSS
◆ Specificity, common style properties
◆ Selectors, Box model, positioning, flex model
◆ Grids in CSS, pseudo selectors.
———————————————————————————————————————
——————————————————— HTML + CSS PROJECT
● Week 14 - 19
○ Javascript
◆ Intro to DOM model
◆ Intro to Javascript
◆ Solving DSA in javascript
◆ Let, var, const, hoisting and closures
◆ Filters, maps, arrow functions and other ES6 syntaxes
◆ Arrow Functions and bind, apply usage.
◆ async, await, event loop, callbacks
◆ Promises, event handling in Javascript
◆ Prototypes and classes in JS
———————————————————————————————————————
——————————————————— JS + HTML+CSS PROJECT
● Week 19-23
○ ReactJS
◆ Understanding class based and function based components
◆ Lifecycle methods
◆ Intro to Hooks
◆ React router
◆ Intro to redux toolkit
◆ Using global redux stores in complex web apps
———————————————————————————————————————
——————————————————— REACTJS FRONTEND PROJECT
● Week 24-28
○ Intro to NodeJS
○ Creating APIs in nodeJS
○ Fs module, expressJS, streams and buffers in nodeJS
○ REST APIs
○ Intro to mongoDB
○ Designing schema in mongoDB and Postgres/MySQL
○ Mongoose and Sequelize ORMs
○ Integrating SQL and noSQL databases in express based projects
○ Authentication - stateful and stateless
○ Aggregation Queries
○ Integrating backends and frontends using REST APIs
○ Hosting your projects on Heroku
———————————————————————————————————————
——————————————————— BACKEND ONLY PROJECT
● Week 28 Onwards
○ Revision Sessions and Project Building
———————————————————————————————————————
——————————————————— FULL STACK CAPSTONE PROJECT