Projects
A Distributed, Real-Time, 3D, Networked, Software System as a Competitive Corporate Farming Empire game.
Twin Delayed Deep Deterministic Policy Gradient (TD3) agent for stock trading automation
Generate images using recursive light tracing to calculate physics-based reflection & refractions.
- Tools: C++
- Features Depth of Field, Reflections, Refractions, Antialiasing, Parallelized Code, Oct Tree Acceleration Structure
Rewrite of Unity Shaders to display Non-Euclidean space. Demonstrates Elliptic and Hyperbolic distortion.
- Tools: Unity, C#, GLSL
- Without Euclid's Parallel Postulate, parallel lines can be curved. Two geometric spaces fulfill this, Euclidean and Hyperbolic.
- Made using Geo Vectors and hacked Unity shaders to show actual non-euclidean space (not with portals)
- Walk around and Throw balls while watching everything warp!
Given a set of game instructions, prunes, optimizes, searches game tree for optimal moves with heuristics.
Remote Collaboration in AR and VR for Surgery and Education. Experts guide Novices with new AR/VR Interface.
- Tools: Hololens, Kinect, Oculus VR, Unity, Maya, C#, Java
- An alternative interface for remote experts that combines a live 3D view of an active space within the novice’s envi- ronment with a static 3D recreation of the expert’s own workspace.
- Interface built with the purpose for AR/VR Remote Surgical Collaboration
Compiler to optimize differential rendering programs
Explore a Museum in VR. Pick up a historical object and get transported to the location in which it happened.
- Top 5 hacks at HackXX 2019!
- Features objects that highlight historical accomplishments made by women.
- Picking up these objects will teleport users to the historical event, and play audio that details the event. Ie. Airplane sends users to Amelia Earhart's Plane Cockpit and talks about how she was the first female aviator to fly across the Atlantic Ocean.
A Processor that Encrypts and Decrypts with LFSR and has Hamming Code (Single Bit) Error Correction.
Rendering Objects with Monte-Carlo Sampling to achieve Global Illumination in Realtime.
A Simple CRUD Recipe App for Students. Search with tags and leave comments and ratings!
Angry Birds but input the Velocity, Angle, and Location of the bird and use projectile motion to hit the target.
Education
Stanford, CA
Degree: Master of Science in Computer Science
GPA: 3.97/4.0
- Artificial Intelligence: Principles and Techniques
- Continuous Mathematical Methods with an Emphasis on Machine Learning
- Convex Optimization
- Computer Graphics in the Era of AI
- Computer Graphics: Rendering, Geometry, Image Manipulation
- Computer Graphics: Animation and Simulation II
- Computer Graphics: Image Synthesis Techniques II
- Deep Learning for Computer Vision
- Fundamentals of Computer Animation and Physics Simulation
- General Game Playing
- The Fourier Transform and Its Applications
- Visual Computing Systems
Relevant Courseworks:
University of California, San Diego
La Jolla, CA
Degree: Bachelor of Science in Computer Science
Minor: Applied Mathematics
GPA: 3.92/4.0
- Advanced Data Structures
- Computer Architecture
- Computer Graphics
- Computer Graphics II: Rendering
- Computer Security
- Computer Vision
- Design & Analysis of Algorithms
- Digital Systems
- Math/Algorithm & System Analysis
- Principles of Operating Systems
- Programming Languages: Principles and Paradigms
- Software Engineering
- Software System Design and Implementation
- Statistical Methods
- Theory of Computation
- Calculus, Analytical Geometry, Applied Linear Algebra, Differential Equations, Statistics, Discrete Math, Mathematical Software
Relevant Courseworks:
Experience
- Incoming System Software Engineer on the Hardware Data Tools Team
- Identified and resolved year old bugs in a 600,000-file codebase, deploying fixes to live servers with 180 million active users
- Designed and implemented a dynamic map system in the LoL game engine, enabling projection of 3D geometry onto a 2D map
- Developed and optimized graphics engine components: vertex & frag shaders, UV mapping, and polygon convexity & handedness issues
- Parameterized logic and graphics engine calls, creating internal tool blocks to allow designers to use new features without needing to code
- Updated game client & data warehouse to ingest new telemetry data, enabling the collection of time-based user inventory statistics
- Optimized server performance by moving shape calculation to the client side, reducing network traffic from 1000+ packets to one
- Built internal tool that automatically generates child material metadata for Artists that avoids GUID collision
- Built framework and base mechanics for new game mode in 3 days, passed off to Game Modes Team for future development
- Tools: C++
- Built low latency video platform to simulate professional conference spaces and physical interactions, approved by Denis Zorin
- Integrated Zoom Video SDK APIs, low-level video developer APIs, and data pipeline to dynamically manage conference attendees in real-time
- Built proof of concept for 250+ worldwide SIGGRAPH 2024 committee members to collaborate on technical reviews
- Tools: Zoom Video SDK, Zoom Web SDK, SupaBase, Javascript, React
- Worked on a time-series ML model to generate inferences that forecasts customer sales for supply chain.
- Designed and built frontend + backend of data pipeline and portal to display forecasts in real-time.
- Designed 4 separate Databases, approved by Senior SDEs, implemented models, API calls and authentication and authorization for security, to display data
- Cleaned and optimized data and used AWS services for backtesting
- Tools: AWS EC2, AWS Lambda, DynamoDB, AuroraDB, AWS Cognito, EC2, API Gateway, Amazon Athena, CloudFront, Cloudwatch, Route 53, QuickSight, S3, React, Javascript, HTML, CSS, Amazon Internal Tools
- Research on optimizing automatic differentiation for inverse rendering to reduce register spilling.
- Built compiler to compile inverse rendering programs in Python to assembly code that uses a hybrid of data recomputation and physical memory (disk) reads.
- Wrote simple automatic differentiation programs ie. for Circle
- Tools: Python, C++
- Tutored CSE 101: Design and Analysis of Algorithms, CSE 130: Programing Languages, CSE 167: Computer Graphics.
- Held office hours to help students understand material, and debug programs.
- Wrote midterm and final exam questions and solutions. Made homework questions and solutions.
- Created programming assignments, automatic grader, and reference solutions.
- Topics taught include:
· Greedy algorithms, dynamic programming, divide and conquer, graph algorithms (traveling salesman), P/NP Reductions· Functional programing, lambda calculus, Haskell, higher order functions· Graphics pipeline, raytracing, GLSL, OpenGL rasterization, Matrix transformations, Curve (Bezier/Bspline) derivations.
- Conducted studies for Unmapped, an app with the purpose of performing remote surgery and education
- Aggregated data and made interface mockups, 3D models and Unity scenes for AR/VR application
- Peer reviewed and accepted to SigChi 2023!
- Tools: Microsoft Hololens, Microsoft Kinect, Oculus Rift, Unity, Maya, Java