• Expertise in native Android development using Java and Kotlin.
  • Expertise in real-time graphics programming, particularly with OpenGL and C++, as well as some experience with DirectX 11
  • Working knowledge of .NET development with C# (WinForms and WPF), as well as some basic WinApi knowledge.
  • Familiarity with basic web development, both front-end and back-end, using JavaScript, HTML, and CSS
  • Educated in Physics and Mathematics


Vivint Smart Home
(January 2015-Present)

Principal Software Engineer (November 2017 – Present)
Senior Software Engineer (January 2015 – November 2017)

  • Helped build the Vivint Smart Home Android app, which allows customers to control their smart home using their Android device.
  • Responsible for the architecture of the app. To that end: designs the high-level architecture of the app, evaluates new frameworks and libraries, holds regular architecture meetings, performs regular code reviews, and provides guidance to other developers on architectural principles and coding standards.
  • Responsible for managing the release of the app to over 500 thousand customers.
  • A productive contributor to the app. Wrote many of the complex UI pieces, and refactored much of the legacy code to conform to newer architectural standards.

Kongsberg GlobalSim
Software Engineer (Graphics, Tools)

(October 2009-January 2015)

  • Improved and modernized the visuals for GlobalSim’s training simulation products. Moved the rendering technology from a fixed-function pipeline framework to a shader-based framework. Implemented several shader-based visual effects.
  • Spearheaded the design of a new data-driven architecture for the visual rendering software.
  • Wrote the Scenario Editor software, a GUI application written in C# that the end-user can use to create custom training scenarios by dragging and dropping objects (e.g. vehicles, obstacles, traffic waypoints, etc.), into a 3D view of the training environment.
  • Wrote several GUI and command-line applications that are used internally. For instance, a model optimization tool that processes models and prepares them for efficient rendering without loss in quality, as well as a tool used to align visual channels.

Lifetime Customer
Software Developer (Web)

(March 2009-August 2009)

  • Helped create a sales platform. Worked on back-end code using Perl and MySQL, as well as front-end code using HTML, JavaScript, JQuery, CSS, and an in-house proprietary templating language.

 Sensory Sweep Studios
Game Programmer

(February 2006-December 2008)

  • Helped create a data-driven level editor that was used company-wide to design levels and create scripted events for several shipped games on multiple platforms.
  • Developed player code and boss AI for an unreleased 2.5D platforming/shooting game for the Xbox 360.
  • Shipped games include Alvin and the Chipmunks for the Wii and The Tale of Despereaux for the Wii, PC, and PS2. Contributed to many unshipped titles as well.


Utah Valley University, Orem, UT (Spring 2016)
Bachelor of Science, Physics
3.96 GPA (Summa Cum Laude)
Dean’s List, NSF Scholar

Undergraduate Research:

Computational Physics – Condensed Matter
(April 2013-Present)
Wrote software that generates probability distribution functions for the defect-induced electric field gradients inside of crystalline and amorphous solids. Wrote software that integrates over these probability distributions in order to calculate various physical properties, such as the G2 spectrum used in Perturbed Angular Correlation. Implemented numerical routines that perform curve-fitting for the parameterization of these probability distributions.

Conference Presentations:

Influences of small clusters of defects near probe nuclei in cubic structures in perturbed angular correlation models.
APS 4 Corners Section Meeting 2013, University of Denver, Denver, CO

Unavoidable asymmetries in distributions of electric field gradients.
APS 4 Corners Section Meeting 2014, Utah Valley University, Orem, UT