I am a Computer Science Graduate Student at State University of New York, Stony Brook (SUNY-SB). My interest lies in systems, algorithms and data science. Currently, I am exploring the systems domain by working in File System & Storage lab on hpcperf project under the guidance of Prof. Erez Zadok for my advanced project.
As a Software Engineer, I have worked on Native Application - Tizen Web Browser as well as System Sevices and Tizen Operating System. I was entrusted with ownership of Quick Access Module, Website Settings Module of Tizen Web Browser - stock browser for Tizen powered devices and Download Framework of Tizen Operating System. I have supported the trasition of Tizen Web Browser packing format from rpm to tpk and received award for my contribution to Tizen Web Browser. Since then, I have been contributing to Tizen Web Browser as well as Download Framework of Tizen Operating System and various system services like Browser-Provider and at the end, implemented a new feature - My Galaxy for Tizen Web Browser from scratch completely.
Developed a proof of concept for deep link enabled advertisements for Windows Phone Applications through Web Interface by researching a way to enable the same and presented it to Division Head. This involved Windows Phone App development, Modification of Website UI, Middle Layer and Database.
Modified Linux kernel 4.6 to support system call vector table per process designed based on OOPS. Developed various loadable kernel modules to provide custom system call tables. Problem decription is mentioned in detail here.
Salient Features of the design:
- Kernel Module Developer wouldn't notice any changes in Linux kernel for implementing custom system call vector. Just need to call two API to do so
- Support for multiple system call vectors per module and custom functions in other loadable kernel module can be used as intended in Linux.
- Long term support and flexibility provided to developers using function pointers
- Ease in extending support of a new system call to be customized
Implemented a file system which supports tracking of system calls in Linux and generates a trace file which can be replayed if necessary using stacking technologies and multi-threading.Problem decription is mentioned in detail here
Salient Features of the design:
- Efficient and minimal memory footprint In-kernel implementation to provide feature of tracing on-demand basis
- Devised highly swift and unerring user programs to replay the trace logged in trace file and/ display the information of trace file in extensive details enabling user to deduct conclusions easily
- Ease in extending to support new system calls
In RNA-sequencing data, two genes can have high sequence similarity, due to gene duplication (paralogs) or transfer (orthologs). It can be difficult to distinguish between transcripts of genes that are homologus (i.e. paralogs or orthologs) and transcripts that represent isoforms of the same gene. Developed various statistical models to improve paralog detection.Implemented Negative Binomial Distribution and a simple probabilistic model on the expression level of the transcripts
Developed a NLP system based on supervised learning that take input as word problem and produce answer as the ouput. Key Points:
- Explored NLP systems and their working
- Developed 2 fundamental models for solving arithmetic word problems and 2 incremental approaches over it
Developed a PAM in Linux which prevents an intruder from accessing the system in case an intruder comes to know the password as we associate typing pattern of user with the password using Keystroke dynamics. Salient Feautres:
- Secondary modes of authentication like security question and Google Authenticator
- Implemented supervised learning using One Class – Support Vector Machine
- a Java prototype depicting the same
- Included with Ubuntu Login Screen
Developed a website named virtual learning management system from scratch in which students can enroll to various courses of various streams and give a test and raise doubts pertaining to enrolled course and complete the course while author and content manager upload and approve courses and admin approve new users and moderate forum. Feautres:
- Login Authentication with MD5 Hash
- Uploading, Downloading and Viewing of Documents based on user level access
- Forum for user interaction and doubts discussion with moderation of content and flagging of posts
- Recently trending discussions/reviews
- Build student reputation score based on “Vote as helpful” votes received for posted comments
- Display QR code against published article/resource.
Implemented true virtual block device that can support a filesystem which demonstrates the functionality of block drivers with the system without dealing with hardware complexities.