Module: C++
Aim : To learn solve 10-20 problems on
Hackerrank.
C++ Basics With Practice on Hackerrank
● C++ Helloworld
● C++ Data Types
● Practice on Hackerrank
● C++ Variable
● C++ Variable Scope
● C++ Operators
● C++ Loop Types
● C++ Functions
● C++ Arrays
● C++ Strings
● Searching and Sorting
● C++ Recursion
Module : Coding Mafia
Aim : To learn solve first 150-300+ problems on
Codechef, Leetcode, InterviewBit and Spoj in 7
1
weeks.
Basics, Input, Output, Loops, Addition, Subtraction
● Introduction to Coding Platform Codechef
● Hello world program in C/C++
● While loop & For loop
● Operators like addition/substraction
● Solving reversing a number
● Getting started with Codechef
● How to solve more and increase speed
● Resolving wrong answers
● Solving problems on Codechef
● How to speed up problem solving ?
● Daily practice exercise
Time Complexity, Array, Binary Search, Kadane's Algorithm.
● Using for loop to input array
● Sum of all elements in array
● What is Time Complexity
● Best, worst and Avg Complexity
● Binary Search
● Kadane's Algorithm
● Count Sorting
● Solving problems on Codechef
● Daily practice exercise
Linear Search, Binary Search & Adhoc problems
● What is brute force ?
● How to optimise ?
2
● Linear Search & Binary Search
● Solving for loop based problems
● Submissions on Codechef
● Solving binary search based problems
● Solving problems on Codechef
● Daily practice exercise
Prime Numbers, Vector and STL algorithms:
● What is Vector ?
● Vector operations and Sort
● Starting number theory
● Finding Prime Numbers
● How to find prime faster ?
● Sieve of Ethranos
● Solving problems on Codechef
● Daily practice exercise
Recursion & Memoization
● Factiorial using for loop
● Factiorial using Recursion
● What is Memoziation ?
● What is Hashmap ?
● Solving problems on Codechef
● Daily practice exercise
Game Theory, Companion Matrix & solving problems asked in interviews
● Solving more 2D matrix problems
● Intro to Game Theory
● Power function in logn
● Faster way to compute large factorial
● Companion Matrix
● Tips : for solving problems
● Daily practice exercise
3
Working on LinkedList, Queue & Stack
● Introduction to Leetcode
● What is segmentation fault and pointers ?
● Into to Linked List
● Intro to Queue
● Intro to Stack
● Push, Pop and Size operations
● Strategy : How to solve think and solve faster ?
● Daily practice exercise
● More Problems Practicing on LinkedList Stack & Queue
● Daily practice exercise
Working on LinkedList, Queue & Stack
● Introduction to Leetcode
● What is segmentation fault and pointers ?
● Into to Linked List
● Intro to Queue
● Intro to Stack
● Push, Pop and Size operations
● Strategy : How to solve think and solve faster ?
● Daily practice exercise
More Problems Practicing on LinkedList Stack & Queue
● Linked list based problem solving
● Stack based problem solving
● Queue based problem solving
● Solving problems on Leetcode
● Daily practice exercise
4
String, Maps & Heap
● Intro to strings library
● Solving problems on strings
● Solving problems on map
● Min heap and Max heap
● Using Priority Queue STL
● Solving problems on Leetcode
● Daily practice exercise
●
Bitwise operators
● And operator
● OR operator
● XOR operator
● More Hashmap
● Solving problems on Leetcode
● Solving problems asked in interviews
● Daily practice exercise
Set and Tree
● Using set library
● Operations like insert,size, begin, end, iterators
● Learning two pointer technique
● Intro to Binary Tree and Complete Tree
● Solving problems on Leetcode
● Solving problems asked in interviews
● Daily practice exercise
5
More Practice
● Revisiting pointer, linkedlist and Adhoc problems
● Solving more problems asked in interviews
● Solving problems on Leetcode
● Daily practice exercise
Tree and Tree Traversal
● Important tips to solve hard problems
● Introduction to Interview bit
● Intro to Tree
● Pre order traversal
● In order traversal
● Post order traversal
● Implementation using recursion
● Solving problem based on Tree
● Strategy to solve on Interviewbit
● Daily practice exercise
Hard Level : Tips and practice
● How to solve approach hard level problems
● Solving problems based on strings and arrays
● Soling problems asked in Google, Facebook, Directi
● Daily practice exercise
Hard Level : Number Theory, Strings & Interview problems
● Solving hard Number Theory based problems
● Solving hard string based problems
● Solving more problems asked in product based companies
● Daily practice exercise
6
Hard Level : Arrays, Strings & Maths
● Solving more problems asked in product based companies based on arrays,
strings and maths
● Daily practice exercise
Hard Level : TRIE and Extras
● Intro to TRIE
● Implementation of trie.
● Solving problems asked in Amazon
● Solving problems based on TREE
● Daily practice exercise
Audio Podcast : Strategies and Time management
● Strategy to solve problems in Online Coding Contest
● Which projects benefits in resume ?
● How to resolve Time Management issues ?
● Daily practice exercise
Memoization
● Recursion Detailed
● What is Memoization
● Solving problem using memoization
● Daily practice exercise
Backtracking Algorithm
● What is BackTracking ?
● Solving NQueen Problem
7
● Daily practice exercise
Hard Problems: Tree and Arrays
● Level Order Traversal of Tree
● Zig Zag Order Traversal of Tree
● Tri Sum Zero Problem
● Daily practice exercise
Dynamic Programming
● What is Dynamic Programming ?
● Top Down & Bottom Up approach
● Fibbonacci Series
● 1D Prefix Sum Array
● 2D Prefix Sum Array
● Daily practice exercise
Hard Problems on DP
● Solving hard problems on DP
● Rod cutting pronblem
● Longest Increasing SubSequence
● Best notes for Dynamic Programming
● Daily practice exercise
Graph, BFS & DFS
● What is Graph ?
● Directed, Undirected ?
● What are the use cases ?
● Depth First Search
● Breadth First Search
● Implementation of code for DFS & BFS
8
● Daily practice exercise
Greedy Algorithm
● Huffman Coding Algorithm
● Daily practice exercise
Career Guidance
● Resume Tips
● GSOC
● Applying Off Campus
● Closure of Coding Mafia
Module : Advanced Coding
Mafia
Aim : To learn solve 300-500+ problems on
Codechef, Leetcode, InterviewBit and Spoj in 3-4
months.
● Targetting 300+ hard problems
● Hard problems from SPOJ platform
● Hard variations of Recursion
● Hard variations of Trees
● Hard variations of Dynamic Programming
9
● Hard variations of Backtracking
● Hard variations of Graphs
● Hard problems asked in interviews
Module : AI Mafia: Python
+ Machine Learning A to Z
Aim: Learn Python from basics and develop
projects like Face Recognition System, Handwritten
Digit Recognition, Air Quality Prediction, Amazon
Recommendation System, Diabetes Classification,
Word Analogies and Dominant Color Extraction.
Building Foundation : Python Core
● Introduction to Python
● Variables
● Data Types
● Python Objects, Numbers & Booleans, Containers
● Operators - Arithmetic,Bitwise,Comparison,Assignment
● Conditions - if-else, if-elif-else
● Loops - for, while
10
● Break and Continue Statements
● Functions
● Practicing problems on Hackerrank
● Daily practice exercise
Project 1 : Send Email using Python
● Mini project Using SMTP library, send emails using python to anyone
● Daily practice exercise
Python Data Structures
● Lists - Object, Methods, List Comprehension
● Tuples - Object, Methods, Immutability
● Strings - Object, Methods, Splitting, Joining, Format Function
● Sets, Dictionary, View Objects
● OOPS Concepts and Working with Files
● Practicing problems, Become 4 Star Coder on Hackerrank
● Daily practice exercise
Project 2 : Automate Tinder using Python
● Mini project Using PyAutoGUI, automating tinder requests
● Daily practice exercise
Version Control System : Git
● What is Git?
● Git vs Github
● Git Bash vs GUI
● Setting up Git on machine
● Hands on Git Commands
● Setting up account and repository
● Pushing codes over Github
11
● Practicing - Getting comfortable with Git
● Daily practice exercise
Python Libraries in Depth : 1
● Numpy - Ndarray Object
● Numpy - Data Types
● Numpy - Indexing and Slicing
● Numpy - Broadcasting
● Numpy - Stacking and Splitting
● Numpy - Operators
● Numpy - Linear Algebra Methods
● Numpy - Statistics
● Daily practice exercise
Python Libraries in Depth : 2
● Pandas - Series
● Pandas - Dataframes
● Pandas - Indexing and Selection
● Pandas - Reading CSV, Excel and JSON
● Matplotlib - Visualization Scatter Plot
● Matplotlib - Visualization Bar Graph, Histogram and Curves
● Solving Assignment - Numpy and Pandas
● Daily practice exercise
Project 3 : Web Crawler using BeautifulSoup
● Learning and build cool stuff using web scraping in python
● Daily practice exercise
Getting Started with Machine learning
12
● What is Machine Learning
● Why Machine Learning
● Different ML Algo Classifications
● Challanges in Machine Learning
● Math Intelligence
● Applications in Various Verticals
● Set up and Installation - Anaconda and Libraries
● Daily practice exercise
Regression Techniques
● Linear Regression - Mathematical Intuition
● Gradient Descent in Depth
● UnderFitting and Overfitting
● Performance Evaluation
● Implementation of LR from Scratch without using Scikit Learn
● Implementation of LR from using Scikit Learn
● Multivariate Regression
● Solving Assignment - Linear Regression
● Daily practice exercise
Project 4 : Air Quality Prediction
● Predicting Air Quality using Multivariate Linear Regression
● Daily practice exercise
Logistic Regression
● Classification Problems vs Regression Problems
● Likelihood Estimation and Loss
● Gradient Ascent in Depth
● Independent Events
● Log Estimation
● Implementation of LR from Scratch without using Scikit Learn
13
● Solving Assignment - Logistic Regression
● Daily practice exercise
Project 5 : Diabetes Classification
● Use Logistic Regression to classify diabetic patients
● Daily practice exercise
K-Nearest Neighbors
● Lazy Learners
● KNN Issues
● Curse Of Dimensionality
● Non Paremetricity
● Implementing Nearest Neighbours Algorithm
● Learning OpenCV
● Solving Assignment - K-Nearest Neighbors
● Daily practice exercise
Project 6 : HandWritten Digit Recognition
● Using MNIST Dataset to perform Digit Recognition using KNN
● Daily practice exercise
Project 7 : Face Recognition
● Working with Images and Live Video Streaming
● Detect faces using OpenCV and Machine Learning.
● Daily practice exercise
Project 8 : Build Snapchat Filter using OpenCV
● Learn to process Live Webcam stream
● Apply Moustach and goggles to faces using OpenCV
14
● Daily practice exercise
KMeans Clustering
● Getting Started with Unsupervised Learning
● Pizza Parlour Case Study
● Implementing Clustering Algorithm from Scratch
● Implementing Clustering Algorithm using Scikit-Learn
● Problems with K-Means
● Solving issues using DBSCAN
● Daily practice exercise
Project 9: Dominant Color Extraction
● Repaint an image using K-Means Clustering.
● Daily practice exercise
Natural Language Processing (NLP)
● Natural Language Feature Engineering - converting text to features
● Text Analytics, Tokenization, Chunking
● Document Term Matrix
● Stop word removal
● Stemming
● Lemmatization
● Regular Expression
● Bag of Words, CountVectorizer
● TF-IDF
● Daily practice exercise
Project 10: Recommendation System
● Fetching women apprael's data from Amazon Product Advertising API
● Text Based Recommendation System on Amazon Real Data
15
● Exploratory Data Analysis
● Building Vocabulary
● Pickling
● Euclidean Distance, Cosing Similarity
● Daily practice exercise
Word Embeddings & Neural Networks
● Word2Vec Model
● Word Analogies
● Learn to implement Word2Vec and learn interesting analogies in an unsupervised
manner.
● Neural Nets & Multi Layer Perceptron Classifier Introduction
● Daily practice exercise
Project 11: Odd One Out
● Selecting Odd one out from multiple words using word vector representation.
● Daily practice exercise
Career Guidance
● Resume Building
● Discussion on Project Explanation in Interviews
● How to prepare anbd apply for off-campus Interviews?
● Further Steps and Resources
● Closure of AI Mafia
● Daily practice exercise
16
Module : Course : Java A to
Z + Full Stack Development
Aim: This course will help you to learn Core Java,
Advanced Java, Database, Spring MVC Frambwork,
RESTful APIs, Micro-services & related technologies
to build Java-based web applications. Creating
awesome projects like Twitter Clone.
Core Java : Installations
● Installing the JDK
● Running a Java Program
● Downloading IntelIJ
● Daily practice exercise
Core Java : Introduction to Java - Variable & Arrays
● Data Types
● Variables
● Arrays
● Multidimensional Arrays
● Getting User Input
● Daily practice exercise
Core Java : Practicing on Hackerrank
17
● Java 1D Array
● Java 2D Array
● Java Subarray
● Daily practice exercise
Core Java : Operators, Control Statements, Loops
● Math Operators
● Increment Operators
● Logical Operators
● Conditional Operators
● If Statement
● Switch Statement
● For Loops
● While Loop
● Do while Loops
● Daily practice exercise
Core Java : Practicing on Hackerrank
● Java Stdin and Stdout I
● Java If-Else
● Java Stdin and Stdout II
● Java Loops I
● Java Loops II
● Java End-of-file
● Daily practice exercise
Core Java : Maths, Strings & Date
● Random Number Generator
● String
● String methods
● toString, length, substring, indexOf, charAt, toUpperCase, toLowerCase,
compareTo
18
● Date and Epoch Time
● Daily practice exercise
Core Java : Practicing on Hackerrank
● Java Int to String
● Java Strings Introduction
● Java Substring
● Java Substring Comparisons
● Java String Reverse
● Java Anagrams
● Daily practice exercise
Advanced Java : Data Structures
● Arraylist
● List
● Map
● Daily practice exercise
Advanced Java : Practicing on Hackerrank
● Java Arraylist
● Java 1D Array (Part 2)
● Java List
● Java Map
● Daily practice exercise
Advanced Java : Data Structures
● Stack
● Set
● Priority Queue
● Sort
19
● Daily practice exercise
Advanced Java : Practicing on Hackerrank
● Java Stack
● Java Sort
● Java Priority Queue
● Daily practice exercise
Advanced Java : OOPs and Exception Handling
● Class and Objects
● Public, Private and this
● Inheritance
● Daily practice exercise
Advanced Java : OOPs and Exception Handling
● Abstract Class
● Interface
● Method Overriding
● Exception Handling (Try-catch)
● Exception Handling
● Singleton Pattern
● Daily practice exercise
Advanced Java : Practicing on Hackerrank
● Java Inheritance I
● Java Inheritance II
● Java Abstract Class
● Java Interface
● Java Method Overriding
20
● Java Method Overriding 2 (Super Keyword)
● Java Exception Handling (Try-catch)
● Java Exception Handling
● Java Singleton Pattern
● Daily practice exercise
Advanced Java : Creating Project - Knowing about IDE
● How to debug
● How to setup environment
● Creating Project
● Daily practice exercise
Advanced Java : File, Thread & Networking
● File Handling
● Threads
● Multithreading
● Get, Post request
● Daily practice exercise
Advanced Java : Mini Project- Word Top Frequency Analyser
● Reading files
● Using data structures
● Finding top keywords
● Daily practice exercise
Advanced Java : Dependencies using Gson & Json
● How to add dependencies
● What is Json and Gson ?
● Converting objects to Gson
● Converting Gson to objects
21
● Daily practice exercise
Advanced Java : Parsing Html
● Learning about Jsoup
● Running selecting queries
● Daily practice exercise
Mini Project - Wikipedia Fetcher using Advanced Java
● Search Word
● Get information from wikipedia
● Display to user
● Daily practice exercise
Database : Setting up database
● Setting up Postgres
● Setting up Pg Admin
● Daily practice exercise
Database : Using JOOQ - Connecting Database
● Why JOOQ ?
● How to setup ?
● Connect with database
● Create, Update, Delete
● Running queries
● Daily practice exercise
Mini Project - Multithreaded Crawling using Advanced Java
● Picking links from file
● Making multi-threaded network requests
22
● Dumping data
● Daily practice exercise
REST APIS
● What is REST APIS ?
● HTTP Methods- GET, POST
● HTTP Headers##
● Daily practice exercise
Backend using Spring MVC - Getting Started
● The DispatcherServlet
● POM.XML
● Web.xml
● What is Model
● What is View
● What is Controller
● Daily practice exercise
Backend : Explaining Configurations
● Application Properties
● Profiles in IDE
● Knowing about static resources
● Daily practice exercise
Backend : Building first REST API
● Creating Controller
● Creating Entity/Model classes
● Creating Views using jsp
● Daily practice exercise
Backend : Running first REST API
23
● Setting up Jetty server
● Making GET/POST request to server
● Requesting for HTML
● Requesting for JSON
● Daily practice exercise
Backend : Building Twitter - Sign Up Page
● Creating sign up page
● Learning javascript concepts
● Adding Member details to Database
● Learning about interceptors
● Learning about cookies
● Daily practice exercise
Backend : Building Twitter - Login Page
● Learning javascript concepts
● Authenticating user
● Handling login failure
● Redirecting to welcome page
● Daily practice exercise
Backend : Building Twitter - Profile Page
● Update details
● Uploading photo
● Daily practice exercise
Backend : Building Twitter - Create First Tweet
● Setting up UI interaction
● Using more javascript
● Updating user profile
24
● Daily practice exercise
Backend : Building Twitter - Home Feed
● Fetching users feed from database
● Adding LOAD MORE option
● Adding like option to tweet
● Handling unlike
● Daily practice exercise
Backend : Building Twitter - Adding Follower
● Adding follow option on other's profile
● Adding follow option on HOME FEED
● Daily practice exercise
Backend : Building Twitter - Using CDN & Redis
● Making APIs faster ? How ?
● What is CDN ?
● What is Redis ?
● Daily practice exercise
Interview Tips & Closure of Course
● How to explore more
● More tips on projects
● Final words from team
● Daily practice exercise
25
Module : Core Concepts
Fundamentals
Aim: Learning theory concepts because some
companies do ask these topics in interviews.
Object Oriented Programming
● Classes and Objects
● Polymorphism, Overriding, Overloading
● Encapsulation
● Abstraction
● Access Modifiers
● Inheritance
● Friend and Virtual functions in C++
● STL (Standard Template Library) in Depth
● Practicing problems on Hackerrank
Operating System
26
● Operating System and its Types
● Multiprogramming, Multiprocessing and Multithreading
● Process Management and Scheduling
● Process Synchronization
● Deadlock
● Memory Management and Virtual Memory
● File systems
● I/O systems
● Protection and Security
Database Management System
● Introduction to DBMS
● Architectures
● ER Model
● Relational Model
● Keys in Relational Model
● Database Normalization and Normal Forms
● Concurrency Control
● Indexing in Database
● B and B+ Trees
● ACID and BASE Properties
● SQL Queries in Depth : Hands On
Computer Networks
● Introduction to Computer Networks
● TCP/IP vs OSI Model
● Circuit Switching vs Packet Switching
● Flow Control Protocols
● IP and Classful Addressing
● Classless Addressing
● Routing Protocols
● ARP & DHCP
27
● Transport Layer
● TCP & UDP
● Application Layer
● HTTP & GRPC Protocol
Module : Aptitude
Aim: To increase your aptitude score so that you
don’t face issues while online APTI rounds.
🔥
Preparation for companies which takes Aptitude round as first round
● Quantitative Aptitude
● Logical and Verbal Aptitude
● Analytical Reasoning
● Practicing Interview Puzzles
28
Mock Interview Practice
Aim: To increase your confidence and to uplift your
communications skills. Regular 1-1 Mock
Interviews.
Visit Website Now. Click here
29