Sitemap

A list of all the posts and pages found on the site. For you robots out there is an XML version available for digesting as well.

Pages

Posts

Future Blog Post

less than 1 minute read

Published:

This post will show up by default. To disable scheduling of future posts, edit config.yml and set future: false.

Blog Post number 4

less than 1 minute read

Published:

This is a sample blog post. Lorem ipsum I can’t remember the rest of lorem ipsum and don’t have an internet connection right now. Testing testing testing this blog post. Blog posts are cool.

Blog Post number 3

less than 1 minute read

Published:

This is a sample blog post. Lorem ipsum I can’t remember the rest of lorem ipsum and don’t have an internet connection right now. Testing testing testing this blog post. Blog posts are cool.

Blog Post number 2

less than 1 minute read

Published:

This is a sample blog post. Lorem ipsum I can’t remember the rest of lorem ipsum and don’t have an internet connection right now. Testing testing testing this blog post. Blog posts are cool.

Blog Post number 1

less than 1 minute read

Published:

This is a sample blog post. Lorem ipsum I can’t remember the rest of lorem ipsum and don’t have an internet connection right now. Testing testing testing this blog post. Blog posts are cool.

academic-projects

Grocery Store Management System

Published:

  • Desktop applications for the daily activities at a grocery store.
  • Developed two separate applications one for the clients who shop at the grocery store and the other for vendor.
  • The vendor's application acts as a server and multiple clients can be logged in through different computers at the same time.
  • Multi-threaded server was developed to handle requests from multiple clients at the same time.
  • Username and password were used for authenticating customers and the vendor. Different applications would be opened depending on whether a client or a vendor has logged in.
  • Sign-up page was implemented for creating the profile of new users.
  • The profile of a user consists of identification information like name and address, a profile picture, and the signature which could be drawn by dragging the cursor in a rectangular region on sign-up page.
  • Profile information including the photo and signature of each user gets saved in a MySQL database running on server.
  • All items available for the customers were distributed into different categories like vegetables, fruits, cosmetics, etc. and a separate page was displayed whenever the user clicked on a category.
  • A cart was provided to keep track of the products selected by the customer.
  • When users check out, they get charged for items in their cart and an invoice is generated.
  • The vendor's application keeps track of the number of items available in the inventory. The quantities of each item are updated as and when they are purchased by customers.
  • New items can be ordered by the vendor through the application and inventory information will be updated accordingly.
  • History of all transactions is saved on the server side.

Object detection for the vision impaired

Published:

  • An autonomous system to help vision impaired people get an understanding of the objects in their environment.
  • Single Shot MultiBox Detector was used to find the names of objects present in the live images captured by Raspberry Pi Camera module.
  • The list of these names was made available on a website which had text-to-speech facility for accessibility purposes.

Mitigation of cyber-attacks on web applications

Published:

  • Proposed and implemented the use of a policy-based proxy server to tackle SQL injection (SQLi) and Cross Site Scripting (XSS) attacks on web applications.
  • Developed two versions of a web application for banking purposes. One version made use of a proxy server while the other version didn't.
  • The proxy server receives and analyzes each request received from the client. It consists of a set of policies that determine whether a request is likely to cause an SQLi or XSS attack.
  • If a request is likely to cause an attack, it is either sanitized or terminated before sending it to the main server.
  • In the absence of a proxy server, the requests are directly sent to the actual server.
  • The two versions of the application were used to demonstrate teh effectiveness of the proxy server in tackling different types of attacks.

Accessing cloud storage using POSIX file access semantics

Published:

  • Cloud platforms offer several advantages over on-premise data storage. However, many people are still unfamiliar with the semantics of accessing cloud storage and several softwares rely on the old POSIX semantics for data access. This project provided access to cloud storage using POSIX semantics.
  • Plugins were developed to facilitate data transfer between a Server Message Block (SMB) protocol based file server and cloud storage platforms like AWS and GCP.
  • Although the data saved on file server was stored on cloud, the users were able to access it like any other file or folder stored on their device.

Processing loan applications using Machine Learning

Published:

  • Compared the performance of 5 different ML classifiers : logistic regression, decision tree, support vector machine, k-Nearest Neighbors (kNN) and gaussian naiver bayes, for predicting whether a loan application must be approved or not.
  • The use of effective data-preprocessing techniques for dealing with missing values and removing non-essential features ensured that these models outperformed prior work done in this field.
  • Decision tree model gave perfect accuracy of 100% and was suggested to be the best classifier for this application.

Autonomous Warehouse

Published:

  • Developed a program that prepares a schedule of operations to be performed by robots in a warehouse to fulfill all customer orders in minimum possible time.
  • Declarative programming paradigm was used since this was a search space optimization problem.

Galaxy Classification using Transfer Learning

Published:

  • The shape of a galaxy provides insights about its evolution and is an important aspect in astronomical research.
  • Novel deep learning classifiers were proposed and trained to categorize galaxies into 10 classes using the galaxy images captured by space exploration missions.
  • Transfer learning was used as opposed to the earlier works that trained networks from scratch.
  • VGG-16, ResNet-50, XceptionNet, InceptionNet, and DenseNet-121 architectures were used to create 5 separate feature extraction models.
  • The VGG-16 based model turned out to be the best one outperforming a state of the art model in 8 of the 10 classes giving only 2% lower overall accuracy.
  • The resource consumption in training the model was brought down by 60% and the number of models trained before finding the one that gives the best performance were reduced from several 100s to 10.

Disaster response portal

Published:

  • Developed a portal to help emergency responders in planning rescue operations during the time of crisis.
  • Crowd-sourced data collected from a disaster reporting mobile application was visualized in the form of line chart, choropleth map, dot plot, scatter plot, parallel co-ordinate plot, box plot and heatmap.
  • The plots were interlinked to provide the users a cohesive understanding of the situation on ground, changes in the conditions over time and assess the reliability of the data reported.
  • The failure of a parallel co-ordinate plot in visualizing large number of records was overcome by innovating a visualization technique which blended box-plot along with a parallel co-ordinate chart. This was done by grouping the records based on a meaningful criteria, in this case region where reports were made, and using a box-plot for each axis on parallel co-ordinate plot to represent the distribution of values within each group.

blogposts

Energy-Aware Virtual Machine Placement Algorithms Permalink

Published:

  • Data centers across the world are the backbone of cloud computing hosting humongous amount of computing resources.
  • These data centers also consume large amount of energy and have become one of the major contributors of global warming.
  • This blog describes Virtual Machine placement algorithms which can reduce energy consumption of data centers.

education

extracurricular

Cadet

Published:

  • Served in the NCC - a youth wing of the Indian Armed Forces - chapter of my school.
  • Participated in weekly march pasts, city clean-up drives, and republic day parades.

All Rounder

Published:

  • Contributed the team's success in 3 inter-school cricket tournaments

Volunteer

Published:

  • Developed partnerships with student governments on ASU campuses for raising funds to sponsor stress management workshops that benefited 100s of members of ASU community
  • Led Yoga and meditation sessions in 10+ workshops each attended by 25-60 students and faculty members at ASU.

portfolio

professional-experience

Software Engineer Intern

Published:

  • Enhanced the company's flagship product, MoSMB - an SMB protocol based file server - by providing support that allows its users to store data on cloud.
  • The file server used to store all its data locally which required on-premise data storage infrastructure.
  • MoSMB was made capable of using Amazon Web Services' Simple Storage Service (AWS S3) and Google Cloud Platform's Cloud Storage for its data storage requirements.
  • This project also allowed data stored on cloud platforms to be accessed using standard POSIX semantics which are widely known and used by legacy softwares.
  • The company could now target the customers who used cloud storage or were migrating to cloud.
  • An offer to work for the company full-time was also extended to me at the end of the internship.
  • Tech stack : C++, Golang, Amazon Web Services, Google Cloud Platform

Software Engineer

Published:

  • Worked in a team that was responsible for developing and maintaining connectors which handle interactions between eQube Data-as-a-Service (DaaS) platform and third-party softwares like Microsoft Excel, Oracle Database and SAP ERP.
  • Built and released a brand-new connector for Neo4j Graph Database. The development of this connector required bridging the gaps between a schemaless NoSQL database (Neo4j) and the strict-schema followed by eQube DaaS's environment.
  • Developed and released another brand-new connector for Deltek Costpoint ERP software.
  • The low code-no code nature of Costpoint meant that no API was available for interacting with it. Web-services had to be developed and deployed on Costpoint for supporting the tasks needed by a connector.
  • Modified the connector for Polarion Application Lifecycle Management software as per the requirements of a potential client which helped the company in securing new client.
  • Performed maintenance tasks like bug fixes, version upgrades, and customizations to suit the requirements of different clients on 60+ connectors offered by eQube DaaS platform.
  • Tech Stack : Java, MySQL, Neo4j GraphDB, Polarion ALM, Deltek Costpoint ERP, Apache Maven, Subversion, Jenkins

Software Engineer Intern

Published:

  • Slashed the turnaround time for resolving errors related to incorrect metadata about movies and shows streamed on DISH services like Sling TV and Satellite TV by up to 50%.
  • Developed a website which anyone in the company can use to report these metadata related issues and track the progress which has been made in resolving them.
  • Allows managers to effectively delegate each issue to an appropriate resource and migrate these issues to Jira.
  • Email alerts are used to notify stakeholders when issue status changes.
  • Tech Stack : Javascript, HTML, CSS, React, Node.js, Redux, Apache Kafka, ElasticSearch, MySQL, Git

Graduate Services Assistant

Published:

  • Assisted Prof. Ali Altunkaya in offering the graduate level course "CSE 551 - Foundations of Algorithms" to of 300+ students.
  • Prepared 10+ quizzes evaluating the understanding the complex data structures, algorithms, problem-solving and complexity analysis concepts.

Software Engineer

Published:

  • Developed server side logic to support hierarchical structuring of labels used for categorizing 100+ channels and subscription packages streamed on Sling TV. This will be saving hours of manual efforts that are currently performed by the curation team of Sling TV for categorizing these channels and subscription packages.
  • Providing on-call support to resolve discrepancies in the metadata of the live content streamed on Sling TV
  • Tech Stack : Go, Python, gRPC, REST, API Design, Amazon Web Services, Kubernetes, Docker, ArgoCD, Unit Testing, CI/CD, GitLab

publications

Software Engineer

Published in , 2009

This paper is about the number 1. The number 2 is left for future work.

talks

teaching

Teaching experience 1

Undergraduate course, University 1, Department, 2014

This is a description of a teaching experience. You can use markdown like any other post.

Teaching experience 2

Workshop, University 1, Department, 2015

This is a description of a teaching experience. You can use markdown like any other post.