Network Programming (SWE 242P) - Java -Developed client-server model socket communication on top of TCP and UDP. -Resolved unreliability and data size limit of UDP by modifying break-down data chunks and implementing additional acknowledgement messages between client and serves to realize reliable network file server
Course Database Management (SWE 243P) – Java, MySQL -Designed and created relational database management program to keep track of students, courses, and enrollment status while skillfully and efficiently retrieving and updating data. -Used procedural language programs and APIs to access and query relational databases through command-line interface, with range search and fuzzy search included to reduce user cost and enhance persistency.
Concurrency Testing and Debugging (SWE 244P) – Java, Python -Identified thread safe/unsafe code by reading programs and corrected thread unsafe conditions such as race & deadlock conditions by using synchronized keywords, Blocking Queue class, Semaphore class, etc. -Made single-threaded web server and word counter multi-threaded through Executors framework to handle multiple requests simultaneously and ensure thready safety.
Quiz Application – Swift -Designed and created a Quiz Application with heterogenous design allowing the users to view/interact with the questions either edit/add/delete questions and images, while responding to touches, gestures, menu action, etc. -Created codable language that saved and loaded data to/from the filesystem