🎛 CS 352 Compiler
The majority of the grade in Purdue's CS 352: Compilers: Principles and Practice was based off of 5 projects, 4 of which built on top of the previous project. Each new project added another stage and set of features to the compiler which compiled a subset of Java into 32-bit ARM assembly language. The end result was an optimizing compiler written in some of my first C++. I took a bit of a circuitous route to finish my project...
🕵️♂️ 2023 NSA Codebreaker Challenge
The NSA Codebreaker Challenge is an annual challenge put on by the National Security Agency of the United States government. It could generally be described as a cybersecurity capture the flag (CTF) challenge. Every year there are 9 tasks, each one getting progressively more difficult. This year I completed Tasks 1-6, putting me at the top spot for participants from Purdue University. I was one of 164 students nationwide who solved Task 6 out of 3383 participants, putting me in the top 5% of participants. Only 24 people solved Task 9 this year, showing the rigor of this year's challenge.
🗺 MAP
The main goal Purdue's CS 307: Software Engineering I was to create an application with a group of other students. My group decided to create a goal tracking web application. The frontend used React, while the backend used FastAPI and SQLite. I was mainly responsible for the backend, database design, and writing automated tests.