Developed an online marketplace for 3D models. Creators upload models for customers to purchase. Hosts ~1000 3D rendered models.
- Creators upload a model file and scene file stored in AWS S3
- Sketchfab is used to display an editor with the existing scene to allow a creator to adjust the scene color, field of view (FOV), camera (X, Y, Z), and auto-rotate
- Three.js used to load and run 3D model assets in a browser
- Used React for building the front end, Redux for state management, and Axios API for making HTTP calls from the browser.
- Used Java Spring Boot for building the back end and for performing user authentication.
- Used MySQL for storing customer information, model information, cart information, and authentication tokens.
π website
Developed a social media platform that mimics the essential features of twitter, enabling users to sign up, share tweets, follow other users, and discover trending topics
- Used React for building the UI, Redux for state management, and Axios API for HTTP calls from the browser
- Used MongoDB for storing user and tweet data
- Built the back end using Node.js.
- Used express.js for creating HTTP requests and mongoose.js for querying MongoDB
π website
Developed an Android notes application for users to create and save notes with custom colors and search and sort notes based on title, date, or color
- Used Jetpack Compose to develop the UI, MVVM for layouts, Dagger and Hilt for dependency injection, Kotlin coroutines for asynchronous processing, and SQLite for storage
- Implemented on-device storage for notes using Room
π play store
Developed an Android mobile application for exploring hiking trails near the user. Search results can be sorted or filtered based on reviews, accessibility services, and things to do.
- Based on this project, the professor recommended a TA position for the course during Fall '22
- The messaging feature enables users to connect with other trail enthusiasts on the app. A friend request is used to allow users to connect with other hikers. The messaging system also provides a view of all users currently online.
- Used Retrofit for asynchronous network calls, Firebase for notifications, messaging, authentication, and storage services, and SQLite for storage
π Github
A stock market simulator with real-time pricing using the AlphaVantage API.
Developed a stock market simulator with real-time pricing using the AlphaVantage API. This enabled my classmates to learn about and experiment with investing by creating portfolios, trading stocks, and applying automated investing strategies.
- Limited to stocks listed on the S&P 500, we used the AlphaVantage API to fetch the closing value of a stock on a given day
- Implemented caching using Redis to limit calls to the AlphaVantage API
- Used Java for backend development
- Created a GUI using Swing and implemented an MVC architecture
- Stored the user's portfolio information in MySQL
- Wrote tests using JUnit and Mockito
π Github
Developed a large-scale distributed system to serve Wiki query responses to clients via CDNs. Ranked amongst the top teams with the fastest response times
- Implemented query response caching and geographic DNS redirection, improving client response time by βΌ 15%.
- Implemented the CDN server in Python
- Used zlib for compressing responses before caching
π Github
Developed a wget FTP application to download files for input URLs
- Implemented TCP/IP headers and packet validation using checksum from scratch
- Implemented a three-way handshake and congestion control with the server to reduce packet loss by 10%
π Github
Wrote a research paper presenting a study on the different variants of TCP that are used widely across multiple operating systems (Tahoe, Reno, NewReno, and Vegas) and analyzed their performance using various parameters (throughput, drop rate, and latency) under varying degrees of congestion, using NS-2 simulation
π Paper