Top skills
- Java
- Javascript
- Python
- C/C++
- Golang
Main tools
- React
- Gatsby
- Next.js
- React Native
- Spring boot
- Hibernate
- NodeJS
- Apache Kafka
- Django
- OKD Openshift
- Docker
- Helm
- Puppet
- Ansible
- Hadoop
- Spark
- Kong
- Debezium
- Postgresql
- MongoDB
- MySql
- Elasticsearch
- Cassandra
- Redis
- Neo4J
Projects
Weenix OS
Designed a simple OS from scratch, built my own threading, paging and VFS libraries to provide a fully functioning OS
- Status: live
- C
- Operating Systems
- Multithreaded synchronization
- Paging
- Virtual File Systems
e2search
https://github.com/KaushikIyer16/e2searchA simple Java Spring Boot Server that can mock a single node Elasticsearch instance.
- Status: live
- Java
- Spring Boot
- Lucene
EcsaDB
Developed a high available key-value store to redistribute keys upon node additions and removals; executed a slotted-page persistence and a custom redistribution algorithm in Golang.
- Status: in progress
- Golang
- Threads
- B+ Trees
- Slotted Pages
React CDC Renderer
https://github.com/KaushikIyer16/react-cdc-rendererA custom renderer for React components that can record data on the number of times a particular component is rendered and the render timelines to understand and improve App performance. I have to execute a mechanism to push the data to a graph database like Hasura and build interactive dashboards
- Status: in progress
- React
- Javascript
- Hasura
Ralloc
https://github.com/KaushikIyer16/Rallocimplemented an allocation software to generate seating arrangement matrices and audit reports; utilized graphical modeling of data to reduce processing times from hours to minutes.
- Status: live
- Java
- Bootstrap
- Angular
Sentiment Analysis
https://github.com/sentiment-analysisA tool that scrapes through Telegram BotAPI data to understand the overall positive/negative sentiment to a crypto-currency like SHIB/DOGE over a span of 1 month. I have written data cleaning processes such as using demoji to replace emojis with text and have used NLTK Vader to compute the overall sentiment of the message.
- Status: live
- Python
- NLTK
- Plotly
Network Traffic Shaper
Designd a Network Traffic Shaper using a token bucket filter. Used four pthreads to simulate the arrival of packets, tokens and servers to serve the packets. Used pthread_mutex and pthread_conditions to synchronize the data-flow between the threads. Calculated Statistics to understand the minimum variance to serve a packet and worked on reducing the same.
- Status: live
- C
- pthreads
- Multithreaded synchronization
Debezium
Debezium is an open source distributed platform for change data capture by RedHat. Start it up, point it at your databases, and your apps can start responding to all of the inserts, updates, and deletes that other apps commit to your databases. I am an active committer and have contributed key features like incremental snapshot and improved table locking.
- Status: live
- Java
- Change Data Capture
- Maven
Realtime data streaming using PostgreSQL
https://youtu.be/R8UnydieTj4Developed a data synchronization pipeline that can capture data changes; leveraged PostgreSQL replication modes, Apache Kafka, Debezium, and Kafka Streams to improve synchronization speeds from >5 mintutes to <1 seconds between the PostgreSQL cluster and the Elasticsearch cluster.
- Status: live
- Apache Kafka
- Spring Boot
- Dependency Injection
- Distributed Data synchronization
- Change Data Capture
- Gradle
Archetyper
https://unpackaged.reviews/archetyperArchetyper is my attempt to provide a one-line command for creating the directory structure and all the files needed for completing the setup of any project. I am yet to execute custom archetypes and an archetype registry so that people can store their most common archetypes and share it with the rest of the community.
- Status: in progress
- Javascript
- CLI
- NodeJS
- MongoDB
Testimonial
https://github.com/KaushikIyer16/Testimonial/A Testimonial App for the students of Indian Institute of Management, Ahmedabad. Students and Alumni can add testimonials to their peers and choose to keep it anonymous. I have built the backend using PHP and MySQL to store and fetch testimonial information and render it. I have used an Angular frontend to interface with the PHP rendered data to provide fast search options. Additional feature sets include mail customization with HTML, sharing testimonials using system generated links.
- PHP
- Angular
- MySQL