Data Analytics Log Manager

Designed and implemented an application which aims to make complex analytics easy for not only programmers but also other users such as researchers, managers, designers etc. who may not have prior exposure to programming.
It provides

  • An API for receiving log data from multiple applications and storing them in a database
  • Tools to analyze this data
The application provides a lot of flexibility on the type of log data. A single log entry can contain multiple arbitrary key value pairs.
The analytics component is powerful as well as easy to use. It supports
  • Filtering of data using arbitrary key-values pairs
  • Creating a parent-child relationship (Eg. grouping the data by username and visualizing logs for various usernames as child tables)
  • Adding synthetic/computed data (Eg. the number of times a user performed some action)
The application supports authentication and authorization to help protect the data. Admin user can
  • Create/delete admin users
  • Assign applications to users such that a user can do analytics only on assigned applications


  • Extended the standard system call library of NachOS and implemented system calls pertaining to Fork, Exec, Join, Yield, Sleep and Exit
  • Implemented process scheduling algorithms: UNIX Scheduling, First in First Out, Round Robin, Shortest Job First and Non-Preemptive job scheduling. Also, assessed their relative performances
  • Implemented page replacement algorithms: Random Page Allocation, First in First Out, Least Recently Used(LRU) and LRU Clock. Also, evaluated their relative performances under difference scenarios


Designed and implemented a cloud based data storage service consisting of a web interface and a python client

  • Web interface allows users to create/upload files and folders and share them with other registered users
  • Python client provides two way synchronization where latest changes are both pulled from and pushed to the cloud

Content Aware Mail Classifier

Created a mail classifier based on bag of words model using publicly available Enron mail database

  • Studied and implemented various supervised learning algorithms like Multiclass-SVM, Naive Bayes and Random forests
  • Also used basic Natural Language Processing techniques like POS-tagging and stemming
Built the main testing and classification module using python, python-nltk, scikit-learn and weka
Also built a prototype for Gmail using Google App script

Customer Engagement Platform for Retailers

Used Ruby on Rails to build a platform for retailers which consists of

  • A web app (optimized for tablets) to collect customer feedback and contact details
  • Functionality to send Thank You SMS and Email to customers
  • Different access levels from store staff to store owner
  • Analytics of data collected from customers

Online Medical Store

Used Ruby on Rails to build an online medical store with fully functional Products Maintainance System, Catalog, Cart and Check Out System.
The application was hosted on AWS and heroku.

MoodY! Trudes

Made a web app in Yahoo HackU that:

  • Analyses the mood of the person based on his/her updates on social media over a period of time
  • Based on the mood of the person, it suggests music and images

We used machine learning to predict the mood of the person[happy, sad, angry, excited].

Speech Analyser

Made an Educational web app to help children master a language faster.
It randomly chooses a word from database and displays it in the form of a flash card on the screen. It allows users to record their pronunciation which is assessed using tools like Google Speech2Text API and Chromaprint library for audio fingerprinting. The user can also listen to the correct pronunciation of that word from the database directly from the web app interface.

Study of Economic Growth Rate of India

Studied basics of Microeconomics and Macroeconomics and did an analysis of economic growth rate, reasons for it's decrease in past few fiscal years and steps taken by the government to increase it.

Electromania, Takneek

Designed and built a frogger game. In this game, the frog had to cross 4 roads and reach the other side which would increase the score on display by 1. However, the game will get reset if the frog collided with a car. There were buttons for moving the frog up and down and to reset the game. Player could also vary the speed of the cars . For this we used various ICs like 555 , 4029 , 7447 , 4Mux , 8Mux and various logic gates etc.