Course Work
Algorithms
Divide and Conquer, Greedy Algorithms, Dynamic Programming, Sorting and Searching, Amortized Analysis, Graphs.
Programing Design Paradigms
Object Oriented Design - Design principles (Java), Functional programming design (Racket)
Information Retrieval
Search Engine Design - Web crawling, Text acquisition and pre-processing, Indexing and Storage, Link Analysis through PageRank algorithm, User Interaction, Retrieval Models (tf-IDF, BM25, Query Likelihood), Lucene Search, Search Result Evaluation and Ranking Techniques
Data Mining Techniques
Classification, Association rules, Regression, Clustering, Decision Trees, Ensemble methods, Naive Bayes, SVM, Neural Networks, Recommendation Systems
Web Development
Client Side Development : Bootstrap, jQuery, Angular, React, React Native
Server side Development : Spring, Express, Node
Database : MySQL, MongoDB
Database Management Systems
Database Design, SQL, RDBMS, JDBC, JPA, Web Services, Big Data
Managing Software Development
SDLC, Functional and structural testing, TDD, Design Principles, Java design Patterns