Subhodeep Maji

Hello, welcome to my homepage! I am a masters student in the Department of Computational and Data Sciences in Indian Institute of Science. I am currently a part of Database Systems Lab working with Prof. Jayant Haritsa.

Education

M.Tech. in Computational and Data Sciences 2019 - Present

Dept. of CDS, Indian Institute of Science, Bangalore

Courses taken: Topics in Database Systems, DBMS, Parallel Programming, Introduction to Scalable Systems, Design and Analysis of Algorithms, Numerical Optimization

B.Tech. in Information and Communication Technology 2013 - 2017

Dhirubhai Ambani Institute of ICT, Gandhinagar

Courses taken: DBMS, Operating Systems, Algorithms, System Security

Higher Secondary Education 2012-13

Kendriya Vidyalaya, Mehsana

Physics, Chemistry, Maths, Computer Science

Experience

Infocusp Innovations Private Limited Jan 2017 - May 2018

NLP on legal documents

Developed high f1-score ML models to identify various categories of sentences in legal documents using NLP. Automated several repetitive tasks in code pipeline.

Managed game development project

Led and managed a team of five to design and develop the first prototype of a car racing game inspired by Indian terrains.

Digitization of Hand drawn flowcharts

Designed, implemented and tested a software which takes a hand drawn flowchart as input and returns a digitally generated version of it.

Selective Projects

Adding Scalability to Hydra

Description: Hydra is a synthetic data generator that tries to mimic existing database environments in terms of the volume of data that is processed. It uses a linear programming (LP) component at its core which grows out of computing capabilities of LP solvers for complex workloads.
Contribution: Proposed various strategies (eg. Dantzig Wolfe decomposition) that reduce the complexity of the LPs involved, thereby providing scalability to Hydra.

Finding Maximum Bipartite Matching using CUDA programming

Designed and implemented code for finding maximum bipartite matching in parallel on GPUs by solving maximum flow problem using vertex disjoint BFS to repeatedly find augmenting paths and attained speed up of up to 52.

Time series analysis to detect anamolous events

Developed models to detect and predict outlying events in time series data using statistical methods like ARIMA.

Parallel programming projects

Developed - GPU based code for bitonic sort; MPI based code for finding page ranks; MPI based code for Bruck’s algorithm for all to all communication.

Skills

Courses

DBMS, Design and Analysis of Algorithms, Parallel Programming, Introduction to Scalable Systems, Object Oriented Programming, Combinatorics, Data Analysis and Visualisation, Numerical Linear Algebra, Computer Networks, Operating Systems MOOC: Machine Learning (Stanford), Linear Algebra (MIT)

Languages & Tools

C, C++, Python, Java, CUDA, MPI, sklearn, OpenCV, OpenMP, Git, Latex

Have familiarity with

HTML, CSS, JavaScript, spaCy, NLTK

Get in touch