I’m at UW studying Computer Science. I enjoy building things, coffee, and music of all genres. I am interested in software engineering for research in areas like climate science, oceanography, and aerospace.
Most of my code is on GitHub and here is my resumé. I enjoy meeting new people and am happy to talk about almost anything — feel free to reach out by sending me an email.
SWOT L2 SSH cloud-based dashboard
The JPL SWOT satellite aims to make the first global survey of Earth's surface water, observe the fine details of the ocean's surface topography, and measure how water bodies change over time. I have built a cloud (AWS) based dashboard to visualize and analyze SWOT sea surface height (SSH) data. This tool makes the SWOT L2 product accessible to researchers by allowing them to subset, visualize, and export data within their Python/Jupyter environment. Our approach is to make use of cloud computing techniques such as chunking and lazy loading to efficiently visualize the data. A fast backend data source is crucial so the user can scroll around, and change settings while the dashboard can make updates rapidly.
SOPHY Database
Importing, cleaning, and merging ~15 in situ datasets using Python, SQLite, and web API’s. Data exploration and access using Datasette SQLite package.
Jupyter notebook for geospatial data visualization and oceanography code integration
PrismNotes
I built the PrismNotes app to reduce test anxiety and combat mental health issues for students by providing a notes organization tool to create digital notebooks from handwritten notes.
I worked in Android Studio using Java, Microsoft’s Computer Vision API, and JSON
UW Campus Maps
ReactJS app to find the shortest path between campus buildings.
Java engine that handle core logic of the application (model) with ReactJS front-end (view) hosted on Spark server (controller).
Djisktra.java implements Dijkstra’s algorithm to find the shortest path between two nodes in a weighted, undirected graph.
Heavy use of Java generics so model can be scaled for a variety of graph applications.
Java Chess (Magic BitBoard)
Java Chess engine that uses a Magic BitBoard to represent the board state.
The board is represented as a 2D array of 64 squares (8x8). Each bit represents a square on the board.
The Magic BitBoard is a bitwise OR of all the squares that are occupied by a piece.
This allows for fast and efficient board state representation and manipulation.
Java Wordle Game
Java Wordle game based on the popular NYT Wordle game. User interaction is through the command line interface. Words are checked from pre-loaded dictionary set.
Built during a quiet Thursday afternoon.
Core