My Projects
Cybersecurity and systems programming projects demonstrating expertise in network protocols, secure application development, and concurrent systems.
Implements a comprehensive discrete event simulation of a CPU scheduling system with Ready Queue, I/O Queue, CPU, and I/O Channel components. Demonstrates advanced understanding of operating system process management and performance optimization.
Technical Highlights:
- •Built discrete event simulation engine supporting multiple scheduling algorithms (FCFS, SJF, Priority)
- •Implemented ready queue and I/O queue management with process state transitions
- •Analyzed performance metrics including turnaround time, wait time, and CPU utilization
- •Modeled realistic system behavior with I/O operations and context switching
Implemented the PageRank algorithm to analyze and rank popularity of web pages across millions of Wikipedia pages. Demonstrates expertise in distributed computing and large scale data processing on AWS infrastructure.
Technical Highlights:
- •Processed over 3 million Wikipedia pages using Hadoop MapReduce on AWS EMR
- •Implemented iterative PageRank algorithm with convergence detection
- •Built distributed link graph analysis system handling large scale web structure
- •Optimized MapReduce jobs for efficient large dataset processing
Built a complete search engine for web pages using compressed trie data structures and inverted indexes. Implements efficient indexing and ranking of search results with stop word filtering.
Technical Highlights:
- •Developed compressed trie structure for efficient term storage and retrieval
- •Implemented inverted index with TF IDF ranking for relevant search results
- •Built stop word filtering system to improve search quality
- •Created web crawler to index multiple pages automatically
Built a P2P structured overlay network implementing a distributed hash table for cloud deployment. Demonstrates expertise in distributed systems, remote procedure calls, and scalable data structures.
Technical Highlights:
- •Implemented DHT using gRPC for efficient node to node communication
- •Built P2P overlay network with consistent hashing for data distribution
- •Deployed standalone Java programs with embedded gRPC server stack on EC2
- •Developed node join/leave protocols with data replication and fault tolerance
- •Implemented gRPC server streaming for efficient event propagation across nodes
Simulates the Distance Vector routing algorithm using Bellman Ford to compute shortest paths across a network. Demonstrates foundational understanding of dynamic routing protocols critical for secure, resilient networks.
Technical Highlights:
- •Implemented Bellman Ford to update routing tables dynamically
- •Modeled multi node network graph structures in Python
- •Explored protocol design considerations for scalability and fault tolerance
Built a multi client chatroom application supporting TCP and UDP protocols with message broadcasting. Highlights secure, concurrent communication in networked systems.
Technical Highlights:
- •Developed socket based server client architecture with Python sockets
- •Supported both TCP (reliable) and UDP (fast) message delivery
- •Managed multiple simultaneous clients, demonstrating concurrency and message handling
Designed a fork based parallel brute force password cracker in C, dividing workload among child processes for efficient password discovery, underscoring the importance of secure password practices.
Technical Highlights:
- •Leveraged Unix fork() system calls for parallelism across multiple processes
- •Managed process synchronization and termination to maximize throughput
- •Illustrated the real world risks of weak passwords and necessity for secure hashing
Implemented a concurrent ticket booking system in C using mutex locks, ensuring consistent seat reservations under high load, a core concept in building secure, thread safe applications.
Technical Highlights:
- •Used pthread library for multithreaded execution
- •Applied mutex locks to prevent race conditions and ensure data integrity
- •Simulated real world booking scenarios with concurrent customer requests
Created a basic HTTP server in Python supporting GET and POST requests, serving static files and dynamic HTML responses, a foundational step towards understanding secure web application delivery.
Technical Highlights:
- •Handled HTTP methods and response headers manually using Python sockets
- •Parsed HTTP requests to serve files and process client input
- •Reinforced core concepts in web protocols and secure request handling