Experience

Graduate Teaching Assistant

University of Colorado Boulder

Designed assignments aligning with curriculum and taught undergraduate algorithms.

  • Led a recitation section weekly consisting of about 30 students
  • Collaborated to create assignments, exams, and teaching materials

Graduate Research Assistant

University of Colorado Boulder

Contributed to highly-performant, high-order and matrix-free solid mechanics code Ratel under the auspices of the Predictive Science Academic Alliance Program (PSAAP).

  • Developed GPU-enabled material point method for consolidation simulations of polymer-bonded crystalline materials
  • Tuned solvers for AMD and NVIDIA GPU-based supercomputer environments
  • Implemented elastic-rigid contact via Nitsche’s method and penalty method

Summer Computing Intern

Lawrence Livermore National Laboratory

Contributed to Lab-funded open-source projects for the simulation of solid mechanics and contact, with an emphasis on performance.

  • Integrated PETSc linear and nonlinear solvers into the Serac solid mechanics code
  • Dramatically improved solver performance, with runtime improvements exceeding 40%

Graduate Teaching Assistant

University of Colorado Boulder

Designed assignments aligning with curriculum and taught introductory programming in C++.

  • Led two recitation sections weekly consisting of over 70 students
  • Facilitated over 30 cumulative hours of interview grading
  • Created design documentation and rubrics for final class project, a text-based video game

Academic Graduate Appointee

Lawrence Livermore National Laboratory

Researched optimal optimal methods of domain decomposition for eigenvalue problems, particularly spectral Schur complement techniques. Continued research on decentralized optimization in collaboration with LLNL.

  • Led development of a moderately-sized software library to facilitate communication between grid devices
  • Collaborated with internal and external project contributors and stakeholders
  • Augmented existing numerical methods with robustness to communication delays and bad data
  • Invented novel asynchronous, distributed linear solver based on Krylov subspace methods

Undergraduate Research Assistant

University of Kansas

Applied mathematical and computing principles to power system resilience through collaborative autonomy.

  • Received Mathematics departmental undergraduate research award
  • Presented early results on domain decomposition for eigenvalue problems at 2020 Undergraduate Research Day at the Capitol
  • Presented at 2021 SIAM Conference on Computational Science and Engineering over: Using Decentralized Learning to Reduce Communication in Column-Partitioned, Multi-Agent Systems

Education

PhD Computer Science

University of Colorado Boulder

GPA: 4.0/4.0

Advisor: Jed Brown, PhyPID Group

Coursework centering on numerical methods and high-performance scientific computing.

Research projects:

  • Implemented Nitsche’s method for modeling contact between elastic and rigid solid bodies in PSAAP-sponsored Ratel code
  • Developed entropy variable implementation of Navier-Stokes fluid dynamics in PSAAP-sponsored libCEED code (now HONEE)
  • Contributed arc-length continuation solver to PETSc, a high-performance, scalable library for numerical PDEs
  • Developed implicit, updated Lagrangian material point method solver for hyperelastic materials in Ratel
  • Created ChordDyn, a Tonnetz-based chord progression generator using chaotic dynamics in Julia

MS Computer Science

University of Colorado Boulder

GPA: 4.0/4.0

Advisor: Jed Brown, PhyPID Group

Coursework centering on numerical methods and high-performance scientific computing.

Area examination covering methods for contact mechanics in computational solid mechanics.

BSc Mathematics

University of Kansas

GPA: 4.0/4.0

Major projects:

  • Awarded departmental honors for a project on the application of decentralized optimization methods to edge devices
  • Received university undergraduate research award for domain decomposition methods for eigenvalue problems

Courses included:

  • Advanced Numerical Differential Equations (MATH 882)
  • Numerical Analysis I & II (MATH 781 & 782)
  • Applied Numerical Linear Algebra (MATH 591)
  • Mathematical Analysis I (Math 765)
  • Complex Analysis I (MATH 800)

BSc Computer Science

University of Kansas

GPA: 4.0/4.0

Comprehensive background in data structures, algorithms, and computing theory. Electives in artificial intelligence and computer graphics, as well as cross-major electives in numerical analysis.

Major projects: