Back

Projects

scroll down ↓
Personal Web and Video Server

Personal Web and Video Server

Developed a robust personal web server capable of serving static files and streaming MP4 videos. Implemented token-based authentication using JSON Web Tokens (JWT) and engineered the system to handle multiple clients concurrently via a thread-based or event-driven approach. The server supports HTTP/1.1 persistent connections and incorporates secure authentication mechanisms to safeguard data integrity and access.

Fork-Join Thread Pool

Fork-Join Thread Pool

Engineered a fork-join thread pool leveraging a work-stealing strategy for efficient parallel task execution. This project maximized resource utilization by minimizing thread overhead and implementing futures with thread synchronization techniques. The solution significantly improved task execution performance while ensuring scalability and responsiveness under heavy computational loads.

Customizable Unix Shell

Customizable Unix Shell

Designed and implemented a custom Unix shell featuring comprehensive job control and a suite of built-in commands. The shell supports both foreground and background process management and integrates advanced functionalities such as signal handling, process groups, and terminal management. It further supports pipes, I/O redirection, and extensibility for future custom commands, ensuring a versatile command-line interface.

Spatial Database with Skip List & PR QuadTree

Spatial Database with Skip List & PR QuadTree

Developed a spatial database capable of efficiently managing a collection of rectangles using a combination of advanced data structures—a Skip List for rapid insertions, deletions, and searches based on rectangle names, and a PR QuadTree to optimize spatial queries such as region searches and intersection detection. This project required the design of recursive spatial algorithms, strategic use of inheritance for tree nodes, and application of the Flyweight pattern to enhance memory efficiency.

External Quicksort with Buffer Pool Management

External Quicksort with Buffer Pool Management

Implemented a modified Quicksort algorithm designed to efficiently sort large binary files by leveraging a buffer pool with Least Recently Used (LRU) caching. Operating directly on disk-based data—comprising 4-byte records stored in 4096-byte blocks—the algorithm minimizes expensive disk I/O by employing median-of-three pivot selection, hybrid sorting for small partitions, and optimized memory flushing strategies.

Memory Management System with Hash Table & Buddy Allocation

Memory Management System with Hash Table & Buddy Allocation

Designed and implemented a memory management system that integrates the Buddy Allocation method with a dynamic hash table employing double hashing and rehashing. This system efficiently stores and retrieves variable-length records, dynamically managing memory expansion while merging free blocks to optimize space utilization. The project demonstrates advanced expertise in data structures, memory allocation strategies, and hashing techniques.

Personal Portfolio Website

Personal Portfolio Website

This portfolio is a dynamic, self-reflective showcase of my journey as a developer and designer. It not only highlights a curated collection of projects but also stands as a testament to the modern web development skills I've honed over time. The site features a clean, responsive design that adapts seamlessly across devices, demonstrating my proficiency in HTML5, CSS3, and JavaScript. Interactive elements, smooth animations, and thoughtful UI/UX design reveal my attention to detail and commitment to creating intuitive user experiences. Beyond serving as an archive of my work, the portfolio itself is a live demonstration of best practices in web performance, accessibility, and maintainable code architecture. From responsive layouts and cross-browser compatibility to efficient asset management and version control, every aspect of the site underscores my ability to build scalable, high-quality web applications.

YourTake, Microblogging Web App

YourTake, Microblogging Web App

YourTake is an innovative microblogging platform that is currently under development, designed to empower users to share short, real-time opinions and insights much like Twitter. It is being built with a modern tech stack featuring a React-based frontend for a responsive, intuitive interface and a Node.js backend that utilizes WebSockets for real-time interactions. Planned features include posting, liking, and commenting, along with personalized feeds and advanced search capabilities—all optimized for performance and scalability. As development continues, YourTake aims to evolve into a dynamic space where spontaneous discussions and trending topics come to life.