Education

Ph.D. in Computer Science [currently pursuing]
The University of Texas at Austin • Austin, TX
Fall 2019 - present
(On parenting leave during the Covid-19 pandemic, March 2020-August 2022)

M.S. in Computer Science
Texas State University • San Marcos, TX
Thesis: "Characterizing the Performance Bottlenecks of Irregular GPU Kernels"
May 2015

B.S. in Elecrical & Computer Engineering, Engineering & Public Policy
Carnegie Mellon University • Pittsburgh, PA
May 2005

Experience

Research Experience

Doctoral Research Assistant
Compilers Research Lab (CRL)Texas State University • Sep. 2017 - Dec. 2018

  • As a part-time student in Texas State's brand new Ph.D. program, briefly researched optimization strategies for data placement and movement on heterogeneous memory architectures before realizing my first love was still computer architecture and switching Ph.D. programs to pursue it

Graduate Research Assistant
Efficient Computing Laboratory (ECL)Texas State University • Sep. 2010 - May 2015

  • Researched software techniques and architectural support for the efficient acceleration of irregular, pointer-based codes using general-purpose GPUs; investigated the performance of GPU graph benchmarks via cycle-accurate simulation and analyzed the impact of microarchitectural design tradeoffs including cache latency, warp scheduling policy, and memory coalescing behavior
  • Helped implement and manually optimize several CUDA GPU codes, including a floating-point compressor and iterative hill climbing traveling salesman (TSP) solver; lead-authored four publications
  • Mentored junior group members and led weekly group meetings when the director was unable to attend

Professional Experience

Senior Design Engineer
ARM, Inc.High-Performance CPU Verification Team • Jan. 2009 - Mar. 2010

  • Unit verification owner of the load/store (LS) unit and L1 data cache of the Cortex-A15, an out-of-order, cache coherent processor core for multicore systems; developed the test plan specifying all aspects of simulation-based LS verification; designed and implemented a constrained-random SystemVerilog testbench based on industry- standard verification methodologies; mentored junior engineers and interns

Design Engineer 3
ARM, Inc.High-Performance CPU Verification Team • Jul. 2006 - Jan. 2009

  • Maintained a genetic-algorithm-based random instruction generator for the ARMv7 ISA; debugged failing top-level simulations to identify microarchitectural design flaws and recommend RTL fixes across all units
  • Specified functional coverage metrics; developed constrained-random generators and wrote directed assembly tests to close coverage on microarchitectural corner cases
  • Independently designed a unit testbench methodology and testbench for the L2 cache controller of a Mali GPU, resulting in the first SystemVerilog testbench developed at ARM Austin

Design Engineer 2
ARM, Inc.High-Performance CPU Verification Team • Jun. 2005 - Jul. 2006

  • Unit-level constrained-random verification of the instruction decode and instruction execute units of the Cortex-A8, a deeply-pipelined, superscalar processor that was probably in your very first smartphone

Teaching Experience

Lecturer
Texas State UniversityIngram School of Engineering • Jan. 2019 - May 2019

  • Instructor of record for a 2000-level digital logic course and associated lab component

Lecturer
Texas State UniversityDepartment of Computer Science • Sep. 2015 - Dec. 2016

  • Instructor of record for one or two 2000- and 3000-level courses per semester; developed lecture material, programming-intensive coursework, and exams to align with objectives-based curriculum
  • Across three semesters, received averaged department and university evaluation scores of 4.48 out of 5

Guest Lecturer
Texas State UniversityDepartment of Computer Science • 2011 - 2014

  • Intermittent guest lecturer for undergrad- and grad-level computer architecture, parallel programming, and data structures courses

Head Teaching Assistant • 15-100 (Introductory/Intermediate Programming) • Fall 2004
Teaching Assistant • Introductory Programming, AP/EA Pre-College Program • Summer 2004
Teaching Assistant • 15-100 (Introductory/Intermediate Programming) • Spring 2004
Carnegie Mellon UniversityDepartment of Computer Science

Honors & Awards

Fellowships & Scholarships

Mentoring Dean's Strategic Fellowship, College of Natural Sciences, The University of Texas at Austin, 2019 - present
National Science Foundation Graduate Research Fellowship (NSF GRFP), 2011 - 2015
Andrew Carnegie Scholarship, Carnegie Mellon University, 2001 - 2005

Teaching Honors

Part-Time Faculty Excellence in Teaching Award, Texas State University, August 2016

Scholarly Honors

Graduate Academic Excellence Award, Department of Computer Science, Texas State University, 2019, 2015, 2014, 2013
Graduate Research Excellence Award, Department of Computer Science, Texas State University, 2015, 2011
Outstanding Graduate Student Award, College of Science & Engineering, Texas State University, 2012
University Honors, Carnegie Mellon University, 2005
IEC William L. Everitt Student Award of Excellence, Carnegie Mellon University, 2005
Dean's List, College of Engineering, Carnegie Mellon University (5 of 8 semesters), 2001 - 2005