I am a graduate student in the department of Computer Science at Stony Brook University.
Currently, I am part of File Systems and Storage Lab (FSL)
and involved in research projects under Prof Erez Zadok.
Prior to my masters, I have worked for two years on mobile and wireless
systems. I was part of “Boot & Security” team at Qualcomm where I contributed security
features for mobile phones. I have also worked on the wireless communication (WiFi/BLE)
enabled IoT devices at Marvell Technology Group.
Apart from being a software developer, I enjoy most of my time being outdoors. I enjoy hiking, travelling and listening to music. When forced indoors, I follow a number of sci-fi and fantasy genre movies and television shows. I spend a large amount of my free time exploring the latest technolgy advancements.
Qualcomm Core Technology Group - Boot & Security
Worked on multi stage boot loader for Qualcomm Snapdragon targets. Contributed to enable security features on multiple targets. Primarily tasks involved loading of images/drivers, setting up MMU/Cache, setting up UEFI(Unified Extensible Firmware Interface) compatible environment.
Also contributed to the Project "MISSION ROM" : A framework to reduce the size of RAM by moving most of the code to ROM and enable patching the buggy code in ROM. This reduces memory size, power dissipation, system cost and increase the performance which will impact most of the mobile platforms in near future.
IoT Research & Development Team
Involved in diverse projects ranging from Design and Implementation of SDK for Apple's HomeKit Accessory Protocol (HAP) for Bluetooth Low Energy (BLE )devices & Tunnel (WiFi - BLE bridge) to bring-up of Marvell's WiFi + BLE Chip. Enabled support for WiFi & BLE on multiple IoT platforms. Worked on HTTP, TCP/IP, GATT, GAP, etc layers for WiFi/BLE. Had complete ownership of the Tunnel SDK and a product based on this SDK was showcased at Consumer Electronics Show (CES, 2016).
Analysed and improved the performance of Optical Flow (Gunnar-Farneback algorithm) on GPU based platform (NVIDIA Jetson TK1). 30% performance improvement over CPU(Odroid XU3) enabled real time Image Processing on Quadcopter.
Operating Systems, Analysis of Algorithms, Aritficial Intelligence, Network Security, Database Systems
System Programming & Operating Systems, Computer Architecture, Computer Networks, Data Structures
Embedded Systems & Real Time Operating Systems, Soft Computing (Artificial Nueral Networks & Fuzzy Logic)
Developed a preemptive multitasking kernel by designing scheduler, paging,
memory allocator(kernel/user), kernel threads, ring-3 user process, etc.
● Implemented system calls copy-on-write fork, execve, waitpid, kill, etc.
● Developed Virtual File System with support for ELF parsing and loading.
● A Shell that supports executing scripts/binaries interactively, launching pipes/background processes and allows file lookup by changing directories.
● Designed and implemented state machines to tunnel 8 BLE devices over WiFi.
● Implemented the HTTPS to GATT packet Request/Response protocol.
● A stateless design for asynchronous events, parallel requests and real time responses with limited processing & memory resources (512 KB RAM).
● Added enhanced security with two layer encryption (ChaCha20-Poly1305 & SHA256) and Suspend/Resume capability to save power.
● ‘Certified by Apple’ for HomeKit. Support for Apple/Google/AWS cloud.
Framework to reduce the size of RAM by moving stable RAM code to ROM.
● Developed Generic toolchain layer to support multiple toolchains (ARM & Q6) to enable function level patching for the buggy ROM code.
● This reduces system’s memory and power with no performance degradation and will highly reduce cost of mobile platforms.
Developed Embedded Linux-based portable platform for performing onboard Hand Gesture Recognition, Object Detection and Face Recognition.
● Yocto Project/Buildroot, Busybox used to create a low footprint Embedded Linux Image with open source software components for computer vision.
Developed application to create additional layer of security for publicly accessible network services.
● Ability to handle multiple clients simultaneously. OpenSSL for encrypting data traffic for all network services.
● Given a set of page views, will the visitor view another page on the site or will he leave. (Machine Learning - Decision Trees)