Builder, creative problem‑solver, and software developer

Hi! I’m a student at Carnegie Mellon University majoring in Electrical & Computer Engineering. I’m most interested in machine learning, autonomous systems, and full-stack development, and have experience with @CMU Racing and ML research at the @Data Storage Systems Center.

Feel free to connect! ˚₊✧⁺˚

  • Designed a SwiftUI social app for friend feedback before posting
  • Built Pick/Rank flows for photos, captions, and sounds
  • Created feeds, voting, friend circles, profiles, and a results Studio
  • Prototyped a cohesive rounded-card interface in Xcode

INAPICKLE [COMING SOON]

Social iOS app for friend feedback on posts before you share them — SwiftUI

Carnegie Mellon RacingCARNEGIE MELLON RACING
LiDAR x Camera
Calibration
  • Building automated LiDAR-camera calibration for spatial alignment
  • Designed a RANSAC extrinsic solver for precise 3D→2D transforms
  • Combined YOLO detections with PointNet point-cloud features
  • CUDA-accelerated, Dockerized pipeline integrated with DV Desktop

CMU RACING DRIVERLESS [PERCEPTION]

Automated LiDAR-to-camera extrinsic calibration for an autonomous race car — Python · CUDA · Docker

mini-redis>
  • Built a Redis-style in-memory key-value store from scratch in Go
  • Implemented core data structures and command parsing
  • Used goroutines for concurrent, low-latency request handling

MINI REDIS [SYSTEMS]

Redis-style in-memory key-value store built from scratch with goroutine concurrency — Golang

Magnetic Sensor ML Model
  • Trained PyTorch models to reconstruct 3D fields from MTJ arrays
  • Built a programmable calibration rig for labeled sensor datasets
  • Validated models through CMU ECE Zhu Lab experiments
  • Optimized CUDA inference for real-time embedded deployment

MAGNETIC SENSOR ML MODEL [RESEARCH]

PyTorch neural networks reconstructing 3D magnetic field vectors from MTJ sensor arrays — Python · PyTorch · CUDA

  • Built a trace-driven CPU cache simulator from scratch in C
  • Parsed memory traces and configurable cache parameters
  • Implemented set associativity with LRU replacement
  • Tracked hits, misses, evictions, and dirty-byte writebacks

CACHE SIMULATOR [LOW-LEVEL]

Configurable set-associative cache simulator with LRU replacement and dirty-byte tracking — C

  • Built a dynamic memory allocator in C with 10 segregated free lists
  • Implemented K-best-fit placement, block splitting, and four-way coalescing
  • Removed allocated-block footers using packed prev_alloc metadata
  • Built a heap checker for alignment, metadata, boundaries, and free-list links

DYNAMIC MEMORY ALLOCATOR [SYSTEMS]

Dynamic memory allocator with segregated free lists, K-best-fit placement, and boundary-tag coalescing — C