Projects
Public source code on GitHub.
Web Development
Front-end Web Development at Flux.ai (Jan. 2023 - Apr. 2024)
- Implemented bug fixes and features for a browser-based PCB editor, with a focus on graphics, rendering, and performance
- Shipped code on instancing, camera behavior, visual testing, raycasting, GPU picking with custom GLSL shaders, stenciling, and hover selection/interaction performance
- Developed primarily using TypeScript, Three.js, React, React Three Fiber, WebGL, and GLSL
Approval Workflow Engine (Intern Project for Varis, Summer 2022)
- A business rules engine that processes purchase requests and manages corresponding approval workflows
- With extensive configuration options, users can edit business rules, approve or deny orders, reprocess requests, and have comprehensive status updates, all from an intuitive web interface
- Frontend UI using Javascript and React, backend API using Go, and database access/design using PostgreSQL
- Includes unit and integration tests with over 80% code coverage integrated into a CI/CD pipeline
Virtual Earth System Laboratory
(Undergraduate Research Programming for JPL /
Wayne Hayes's Group at UCI, Winter 2020)
- Earth system science simulations and testing using JavaScript and Playwright for web browser automation
JavaScript 30
- A collection of ~30 mini-projects using vanilla JavaScript
- Based on the 30-day coding challenge by Wes Bos
Advanced CSS Example
- Static website landing page featuring responsive design
- Built for Advanced CSS Concepts course by Microsoft
Practice IPA (no longer maintained)
- Find word pronunciation with phonetic symbols (IPA) and audio
- Quiz yourself and save progress on alphabets, frequency lists, and other word lists
- Tech stack: Django (backend), Amazon S3 (file service), Heroku (deployment), Bootstrap (frontend)
Periscopin (no longer maintained)
- Live stream agreggator of periscope broadcasts, displayed on a world map
- Information obtained using Twitter API and web scraping from periscope.tv
Computer Graphics
Rasterizer
- A rasterizer built in C++ that renders SVG files
- Supports texture mapping and anti-aliasing using trilinear filtering with mipmaps
Mesh Editor
- A mesh editor built in C++ that can manipulate geometric mesh model data
- Features include Bézier surface modeling, local remeshing operations such as edge flips and edge splits, and mesh upsampling via loop subdivision
Ray Tracer
- A physically based renderer using path tracing for global illumination
- Uses a bounding volume hierarchy (BVH) as an acceleration structure for ray-object intersection
- Uses adaptive sampling to reduce noise and improve rendering quality
Cloth Simulation
- Real-time physical simulation of cloth with mass-spring computational modeling
- GLSL shader implementations for diffuse lighting, Blinn-Phong shading, texture mapping, bump/displacement mapping, and environment-mapped reflections
Quads
- Computational pixel art: animate quadtrees of images using their color statistics
Nature in Code Simulations
- Biology simulations and visualizations using JavaScript
Data Processing
N-body Simulation
- A parallelized N-body simulation in C++ using the MPI (Message Passing Interface) protocol for high-performance computing, with optimizations using Barnes-Hut approximation algorithms
- Includes a visualization of the simulation using OpenGL
K-Means Machine Learning
- A k-means machine learning algorithm optimized for performance using C++ and CUDA GPU programming
Distfit
(Undergraduate Research Project for
Wayne Hayes's Group at UCI, Winter 2020)
- Python program that performs automated statistical tests, turning research data into scientific results
Wiktionary Explorer
- Python program to parse wiktionary's wikitext data format to extract and transform pronunciation data into a structured format
Courses
Current:
M.S. Computer Science at UT Austin
- Computer Graphics
- Parallel Systems
- Numerical Linear Algebra
- Optimization
- Advanced Operating Systems
- Advanced Algorithms
- Deep Learning
- Reinforcement Learning
- Planning, Search, and Reasoning under Uncertainty
- Virtualization
Previous:
B.A. Physics at UC Berkeley
Computer Science at UC Irvine
- Undergraduate Research
- Computational Geometry
- Computer Simulation
- Applications of Probability in Computer Science
- Operating Systems
- Project in Databases and Web Applications
- Computer Networks
- Compilers
- Programming Languages
- Upper Division Math
- Linear Algebra
- Real Analysis