Distributed Systems, Machine Learning, Big Data, Software Engineering
- Stony Brook University (SUNY), New York, USA
M.S., Computer Science, Aug 2017 - Dec 2018
- Research: Member of the File systems and Storage Lab , working on auto-tuning storage systems for different workloads using Bayesian Optimization. The problem is similar to hyper-parameter optimization in machine learning algorithms or in general automated machine learning.
- Fall 2017 Coursework:
- Spring 2018 Coursework:
- Fall 2018 Coursework:
- Netaji Subhas Institute of Technology (NSIT),
University of Delhi, New Delhi, India
B.E., Control Engineering (elective: AI), Aug 2011 - June 2015
Grade: 3.86/4.00, First Class with Distinction
- Awarded annual merit scholarship (top 10%) for four successive years for exhibiting academic excellence at college.
- Campus ambassador for AIESEC campus activities and events - increased students' membership by 300%.
- Selected Coursework:
- Statistics, Probability, Vector Calculus (IC 205)
- Artificial Intelligence (IC 412)
- Analysis and Design of Algorithms (IC 309)
- Computer Networking (IC 315)
- Computer Graphics (IC 217)
- Related Online Courses:
Uber, San Francisco, CA, USA, Feb 2019 - Present
Software Engineer II - Self-Driving
Team: Machine Learning Platform, Advanced Technologies Group (ATG)
Uber, Pittsburgh, PA, USA, June 2018 - Aug 2018
Software Engineering Intern - Self-Driving
Team: Core Platform, Advanced Technologies Group (ATG)
- Search: Built an end-to-end fast, scalable semantic search platform (search API, web app microservices) with filters and shareable search URLs for searching through and visualizing very large-scale self-driving car time-series logs using ElasticSearch, Go, Node.js, Thrift, React. Used internally by multiple teams for data exploration and distribution.
- Big Data: Designed and implemented a scalable data ingestion architecture for the search platform with data normalization and ElasticSearch indexing pipelines for multiple data sources (PostgreSQL, HDFS) using Hive, Spark, and Uber's workflow management tool.
The role required having strong knowledge of Large-Scale Distributed Systems, Databases, Big Data, Cloud, Web, Backend and Software Engineering.
Stony Brook University, Stony Brook, NY, USA, Jan 2018 - Dec 2018
Graduate Assistant (Part-time), Graduate School
- Tools: Development of an automation tool for dissertation records management (PHP, MySQL, Google Client API).
- Wipro Technologies Ltd., Bengaluru, India, July 2015 - May 2017
Software Engineer, Chief Technology Office (CTO)
- Vision: Built a real-time object recognition and tracking engine for a live video stream on mobile platform using Android NDK and OpenCV in C++/Java. Used by 10+ enterprise clients.
- P2P: Led a team of 4 people in the development of desktop and web application for a webRTC stack based assistance tool with 50k+ users. Built P2P asynchronous telephony engine for media, chat, and context communication with support for message queuing, offline storage, inter-process communication, analytics, and logging. Designed SIP protocol for SDP exchange, configuration scheme for STUN and TURN servers, and serverless backend architecture using Firebase.
mLabs Research, New Delhi, India, June 2013 - April 2015
Software Developer (Part-time) | Research Intern
- Research: Papers on Cellular Neural Networks on Raspberry Pi in the prestigious 14th Cellular Nanoscale Networks and Applications conference at University of Notre Dame, USA. Published in IEEE Xplore.
- Distributed: Built an asynchronous deployment and delivery service for remote code deployment across multiple IoT devices using socket IPC with support for multiple programming languages.
- Linux: Developed custom linux distribution for IoT devices with built-in support for MQTT protocol and other services.
- OpenCV - Open Source Computer Vision Library.
- Electron by GitHub - Build cross platform desktop apps with web technologies.
- Atom by GitHub - The hackable text editor.
- FreeCodeCamp - The open source codebase and curriculum. Learn to code and help nonprofits.
- learnxinyminutes-docs - Code documentation written as code!
- tota11ly by Khan Academy - An accessibility (a11y) visualization toolkit.
- Technical reviewer of the book “Getting Started with Python and Raspberry Pi” by Dan Nixon, Packt Publishing and the book “Mobile Web Performance Optimization” by S. S. Niranga, Packt Publishing.
Honors and Achievements
- Winner of Northwell Health API Baking Challenge at the annual MLH Hackathon [email protected] 2018.
- Secured All India rank 17 and Asia-pacific rank 122 in Google APAC ‘15.
- Top 75 out of 3000+ participants in HackerEarth IndiaHacks Hackathon 2016 in machine learning track.
- Top 50 out of 1000+ in TagMe! 2014 by IISc, Bengaluru, a machine learning contest to categorize an image dataset.
- Ranked 15,016 in the All India Engineering Entrance Examination (AIEEE 2011) taken by nearly 12,000,000
- Gold medalist in school (Intl. - 1004) for International Math Olympiad 2008 by Science Olympiad Foundation.
- Awarded the “Excellence Badge” for eight successive years at school for exhibiting consistent academic excellence.
PyCNN, Author, May – Aug 2014
- Developed cross-platform library for image processing with cellular neural networks; 500+ active users.
- Maintained and managed the project on GitHub with 250+ contributions from 20+ contributing developers.
- Cited in the research published on Using Python and Julia for Efficient Implementation of Natural Computing and Complexity Related Algorithms and B3: A plug-n-play Internet enabled platform for real time image processing.
- Trended on Hacker News front-page and GitHub.
Byzantino, Project Lead, Aug - Dec 2017
CSE 535 Asynchronous Systems by Prof. Scott Stoller
- An implementation of byzantine chain replication with checkpointing for byzantine fault tolerant distributed systems.
- Byzantine Chain Replication is a highly reconfigurable Chain Replication protocol that is highly available and consistent, do not require accurate failure detection, and are able to tolerate Byzantine failures.
Snow OS, Project Lead, Aug - Dec 2017
CSE 506 Operating Systems by Prof. Mike Ferdman
- An x86 64-bit Linux based cooperative Operating System written from scratch in C.
- Supports virtual memory, paging, context switching, scheduling, terminal, shell and file system using tarfs.
- A shell that supports change directory, environment variables, running scripts and background processes, and executing binaries interactively.
Ranking Academic Papers, Project Lead, Aug - Dec 2018
CSE 519 Data Science by Prof. Steven Skeina
- A novel ranking metric to rank academic papers and researchers, and predict the popularity of a research paper on arXiv.
- The ranking metric used a combination of a modified Pagerank algorithm on Citation Network Graph, time-bias and field-bias correction, and journal rankings.
- Used AMiner academic dataset with ~3m records, GCP, Jupyter Notebook, scikit, and pandas.
Horsefly, Author, April 2018
CSE 555 Computational Geometry by Prof. Joe Mitchell
- Horsefly is a delivery system for coordinated logistics with a truck and a drone. Selected as the best course project for Computational Geometry class.
- Defined an algorithm to find a path and a schedule to complete the delivery in approximately minimum time. The algorithm used OPTICS and KMeans density-based clustering algorithms and kdTree data structure for nearest neighbour search.
pbproxy, Author, Nov 2017
CSE 508 Network Security by Prof. Michalis Polychronakis
- pbproxy is a proxy service for adding an extra layer of encryption to publicly accessible network services. It's implemented in C using OpenSSL for cryptographic operations.
mytcpdump, Author, Oct 2017
CSE 508 Network Security by Prof. Michalis Polychronakis
- A passive network monitoring application (like tcpdump) written in C++.
FaceGrab, , Author, Jan – April 2015
- Developed a python tool to collect public images from Facebook and create a face dataset to aid in learning about face detection, or gender recognition applications of machine learning.
- Implemented Eigenface and K-means algorithm in python for gender recognition using the dataset from above tool.
MNIST Sequence, Author, June 2017
- A tool to generate image dataset for sequences of handwritten digits using MNIST database.
- Available as an API and CLI.
- Resulting images are used to train classifiers and deep learning models.
Social Network of Internet of Things (SNIoT), , Project Lead, Jan – May 2015
Advisor: Dr. Prerna Gaur, Professor, NSIT
- Proposed and presented the architecture to create an intelligent network of connected devices capable of acting together to make decisions with or without human interaction.
- Defended thesis in front of the panel comprising of faculty members of NSIT.
- Demonstrated the proof-of-concept on a cloud-based implementation. Best thesis with highest grade (90%).
PiScope, Author, July – Aug 2014
- Developed cross-platform library to turn a Raspberry Pi into an oscilloscope/XY-plotter; 150+ active users.
- Used for characterization of different electronic elements and boards, and as a DAQ for various sensors and devices.
Instrumentation Oscilloscope, Project Lead, Aug 2013 – June 2014
Advisor: Aditya Kumar, Associate Professor, NSIT
- Designed and built a portable, low-cost oscilloscope for laboratory and educational usage.
- Implemented the system software including data-acquisition, processing and display logic in embedded C.
Twitter Popularity, Introduction to Computer Science (edX), Feb – April 2013
- Developed a real-time web application using PHP to determine the more popular trend on twitter out of the two given trends. Received 100% grade for this finals project.
A. Aggarwal and G. Gandhi, "B3: A plug-n-play Internet enabled platform for real time image processing," in 14th International Workshop on Cellular Nanoscale Networks and their Applications, USA, 2014. IEEE Xplore.
A. Aggarwal and G. Gandhi, "Internet based electronic prototyping system for memristor characterization," in 14th International Workshop on Cellular Nanoscale Networks and their Applications, USA, 2014. IEEE Xplore.
- Delivered Spoken English classes at an NGO to underprivileged learners under the social initiative “Teach India” by British Council and Times of India. 7 out of 20 learners in my batch completed the 3-month training program in 2010-11 resulting in their successful employment with the help of improved English language skills.
- Coordinated a social initiative to create employment for rag-pickers under Project Pratham, ENACTUS at NSIT in 2012-13.
- Participated in an exclusive Social Innovation Hackathon by Code for India at Rastrapathi Bhavan, New Delhi as part of Festival of Innovations 2016 in the presence of the President of India “Shri Pranab Mukherjee”. The solutions developed during the hackathon are now being used by the Government of Delhi to tackle social challenges.
- Regularly participate in competitive programming contests on Google Code Jam, Facebook Hacker Cup, Codeforces, and Codechef.
- Audited offices and campus across New Delhi encouraging sustainability and low-carbon footprint practices (~5% money saved with ~10% less energy) under The Eco-Audit program by Indian Youth Climate Network (IYCN) in 2012.
- Volunteered with Delhi Photo Festival 2011 as an amateur videographer covering events of 13-day long festival.