Unit 1 - Week 1 - Week 5
Basics of Programming Language**
Learn what is a programming language and write programs manipulating variables, loops, conditions and data structures.*
Implementation, Brute-force, String, Array, Loops
Learn the basics of programming. Delve into an in-depth intro to data structures and algorithms. Get comfortable with basic data structures like lists, strings, hash maps, sets, etc and solve lots of coding challenges around it*
Key-Value Pairs, Time & Space Complexity, Sorting Algorithms
Understand time and space complexities and learn to analyze the complexities of various algorithms. Explore different sorting algorithms along with their time complexities. Learn how basic searching, binary search works*
Unit 2 - Week 6 - Week 10
Stacks & Queues, Recursion
Understand the data structures involved in working of web-browsers, managing notifications, etc. Solve lots of problems around use cases of the Stacks & Queues data structures with regular coding contests and compete with your peers. Further, learn the powerful tool in writing algorithms, Recursion, and solve problems based on recursion by defining the problem in terms of itself and identifying the base cases
Backtracking, Linked lists, Greedy
Apply learning of recursion to solve algorithmic problems that require searching in every possible combination for solving a computational problem. Understand how to apply backtracking to write a program that can solve the famous Sudoku puzzle. Learn linked lists and perform traversals, searching, and sorting on linked lists. Learn the greedy Algorithmic techniques and understand when and how it is used.
Unit 3 - Week 11 - Week 15
Greedy, Binary Search
Understand how searching works in computer science. Learn Binary Search to perform searching efficiently. Solve lots of problems on use cases of the algorithm and learn how to use the underlying idea of binary search to solve a particular class of algorithmic problems
Dynamic Programming, Graphs
Go deeper into understanding dynamic programming and how recursive algorithms can be optimised using various techniques. Introduction to the tree data structure with extra emphasis on binary trees and binary search trees Understand the heap data structure and its use case. Ever wondered how google maps figure out the route from source to destination? The answer lies with the graph data structure. Understand traversals like BFS, DFS, and shortest path algorithms
Unit 4 - Week 16 - Week 20
HTML, CSS & DOM
Get started with Web development by getting familiar with HTML, CSS to build basic web applications which will be responsive.
Advanced JS & ES6
We will work with more modern JavaScript or ES6+ features. At this time we will explore more parts of the web to build more complex projects and understand different patterns We will also work with Charting libraries that can be used for data visualization.
Unit 5 - Week 21 - Week 25
Node JS & DB Introduction
Intro into Node.js and understand principles. Work with async operations, asnyc IO, handling basic http requests , templating, routing, using express and build APIs. Use evironment variables and setup PM2 or nodemon for configuring your server.
Express, DB, CRUD & REST API
Get comfortable with the idea of setting up a microservice that will act as an interface to work with your databases and other services. Create authentication services with JWT and persist data.
MVC, Tokens, Caching, Files
Have you ever been curious about how backend systems work? How do they manage to handle so much load?
Unit 6 - Week 26 - Week 30
React Basics
We work with the basics of Webpack and understand the evolution of the web. We will learn how to set up with Webpack as well as React. We will also look at npm packages. Explore the underlying principles of how React works, and start building Single Page Applications with it. We will understand state management, component design, declarative style of writing code.
React Advanced
We will work with React and see how its a UI library and help us build large projects by using Reusable Components and work on Routing and other advanced APIs of react to do global state management.
Frontend Project
Work on collaborative projects to build a large system that explores all concepts that are important for understanding real world applications.
Servers, AWS, Containers
Learn all about high-level and low-level design, load balancing, caching, and database design. This includes guest lectures from top software engineers from some of the best companies around.
Full-Stack Project
Work on collaborative projects to build a large system that explores all concepts that are important for understanding real world applications.