Sep 2014 - Present

Masters in Computer Sciences

University of Wisconsin - Madison

Coursework includes : Computational Cognitive Science, Machine Learning, Data Visualization, Algorithms and Natural Language Processing

Aug 2006 - May 2010

B.E (Hons.) Computer Science and Engineering

BITS-Pilani K.K.Birla Goa Campus

Coursework includes : Data Structures and Algorithms, Operating systems, Databases, Programming Languages & Compilers, Computer Networks and Computer Architecture



Programming languages : Java, Python, Groovy

Web UI (HTML, CSS, JavaScript, Adobe Flex and the likes)

Core skills : RESTful web service architecture, Databases, Deep learning, Data analysis and visualization, People interfaces for computers, Content Management Systems, E-commerce platforms

Current Project

1) An Operating System for a 'Programmable Cognitive World' : 

           The project aims at developing a cognitive platform for IoT devices. More generally, a 'cognitive' operating system for a world where everything is connected. Some examples: Speakers auto adjusting to crowds for optimal acoustics, security camera activates alarm and alerts 911, swimming pool heats up when there is a barbecue on the calendar, cart senses items and crosses them off the shopping list. 

Tangibles from the current project : An alarm clock talking to a coffee machine talking to a speaker. No explicit programming is done here. The system learns from a person's daily activities and models his behavior by deep learning. Specific type of neural network used for this project is called an LSTM (Long Short Term Memory) network. Example workflow :

Alarm goes off → Speaker shouts out “Making Coffee” → Coffee Machine starts making coffee → Coffee Machine is done making coffee → Speaker shouts out “Coffee ready”

Work History

Work History
May 2012 - Jul 2014

Senior Member Technical Staff

Oracle Corporation

Most Recent Project : ESSO (Enterprise Single Sign-On) 

∗ Description: Enterprise Single Sign-On offers a highly adaptable and scalable enterprise identity management infrastructure, providing features such as single sign-on to virtually any application with no modification to the target, client-side Windows password reset, centralized credential provisioning and de-provisioning, support for kiosk environments, strong authentication and comprehensive auditing.

∗ Roles and responsibilities:

  • Understanding the core business logic of ESSO code written in C# and porting the functionality to Java.
  • Owning crucial parts of the application such as :

            InstructionManager - Provides an administrator the ability to provision users, credentials etc.

            Audit Manager - Provides a comprehensive reporting infrastructure of all the events generated during the application             run.

∗ Technologies used: 

  • Oracle IDM (Identity Management) suite of products
  • Java - Programming language 
  • Json, XML and INI - Input data formats
  • REST - Framework for communication with ESSO server

Older projects : Test 2 Production of OAM (Oracle Access Manager) components, OpenSSO proxy for OAM

Jul 2010 - Apr 2012

Associate Technology L1

Sapient Consulting Pvt. Ltd.

􏰀 Most experiential project : User session management as part of Forrester NEO

∗ Description: Developed an internet facing multi-threaded web application for handling large numbers of user requests. A typical request contains information pertaining to the user like his unique id and the URI of the resource the user is trying to access. Since the requests come in large numbers, multiple threads are used for handling them. 

∗ Roles and responsibilities:

  • Designed the entire request handling mechanism.
  • Implemented a user cache management system which remembers the recent 5 user requests. This helps in granting access to resources in a faster way since most users request specific resources repeatedly.
  • Implemented a thread management system which does clever thread management. For example, it determines the number of threads to be created depending on the volume of requests coming in at any point in time. If the number of requests are too many to be handled by existing threads, new threads are created but are limited to a pre-defined cap of maximum live threads that can exist in the system.
  • Ensured that the waiting time for users accessing resources is kept at a minimum by smart use of hardware load balancer (a load balancing server) and the thread management system.
  • Mentored a co-recruit from a non-computer science background and helped build confidence in her to write and test good code.
  • Volunteered to be the 'discipline enforcer' and ensured that team mates are on time.

∗ Achievements: Got a rating of 4.5/5 for my work and was one of the toppers of the new recruit batch.

∗ Technologies used:

  • Java - Programming language 
  • Oracle coherence - Cache management
  • Autonomy Interwoven - Content Management System
  • Endeca - Search engine for the site

􏰀 Other projects : Forrester NEO (New Experience Online)