Built an HTTP proxy server using a threadpool to handle multiple concurrent requests
Then rebuilt it using epoll and I/O multiplexing to handle multiple concurrent requests to demonstrate the performance difference between the two
Learned concepts related to networking, concurrency, sockets, signals, processes, and threads
Part of a Systems Programming University course
Traveling Salesman Problem
Solved the traveling salesman problem using the following algorithms: branch and bound, greedy, and nearest insertion
Implemented in Python
Gene Sequence Alignment
Implemented dynamic programming algorithm for computing the minimal cost of aligning gene sequences and for extracting optimal alignments
Implemented in Python
Networking Routing
Implemented Dyskstra’s algorithm to find paths through a graph representing a network routing problem. Used two different data structures to implement a priority queue in order to see that both algorithm design and data structure implementation significantly affect performance
Implemented in Python
Convex Hull
Implemented a divide and conquer algorithm for finding the convex hull of a set of points and analyzed the algorithm both theoretically and empirically
Implemented in Python
Sandbox 2022 Hackathon
Created the frontend of a universal flight platform “OnTheFly” mobile app with navigation capabilities
Built using React Native and other React Native libraries
Rate Everything App (BYU Dev Club)
A social media app that allows users to answer and rate daily prompts, and view other users’ responses
Built with Flutter, Firebase, and Typescript
Worked on the backend, including the database, and API
Family Map Server & Client
A Java server and Android client that allows users to view their family history
Created an http request server to implement a web API and interact with a MySQL database
Developed a Java android client application to accompany the server to call it’s API and display family history data for the user
Part of an Advanced Programming University course
BYU Free Food App (BYU Dev Club)
React Native app to help hungry students find free food on campus
Worked on the map view with React-Native-Maps
Datalog Interpreter
An interpreter program for the Datalog language, built as part of a Discrete Mathematics University course
Built in 4,000+ lines of code written in C++
Consists of a Scanner, Parser, Relational Database, and Interpreter