Education

Washington State University

Bachelor of Science in Computer Engineering and Physics • GPA: 3.86 • Pullman, Washington

Fall 2017 — Spring 2022 (expected)

Activities include: Cougs in Space (NASA CubeSat Initiative), Physics & Astronomy Club, Men's Rowing.

Technical skills

  • Proficient in Javascript, particularly using Node.js, React, and vanilla Javascript
  • Extensively used C#, both Mono and .NET, with MVC, Windows Services, and Winforms
  • Knowledge of source control using Git and SVN—especially with Github, Bitbucket, and Microsoft TFS
  • Deep understanding of C, C++, and Java on both Windows and Linux environments
  • Created IP and testbenches using Verilog using Xilinx Zynq FPGAs, connected to software on the CPUs over AXI3/4
  • Understanding of ARM subsystems and registers. Knowledge of I²C, UART, SPI, and other common protocols
  • Basic SolidWorks design of parts/assemblies
  • Beginner understanding of Python 2.7 and 3.x, with some experience using IPython/Jupyter notebooks

Other skills

  • Writing technical documentation using Confluence and LaTeX.
  • Practicing agile methodology with scrum. Managing work using Jira and TFS.

Experience

Schweitzer Engineering Laboratories (SEL)

Engineering Internship • Pullman, Washington

August 2019 — January 2020

Created simulations (testbenches) in VHDL and Verilog. Modified IP in Verilog using Xilinx Vivado for Zynq 7000-series FPGAs, using the AXI4-Lite interface for fast and efficient DAC access from PS to PL logic. Built experiments to test effectiveness of NEON instructions with a goal of improving IRQ run time. Refactored IRIG IP to use standard time (time.h) structs and types.

NASA Jet Propulsion Laboratory (JPL)

California Institute of Technology
Engineering Internship, Mars Relay Operations Service (MaROS), 397J • Pasadena, California

May 2019 — August 2019

Integrated Splunk into MaROS (Mars Relay Operations Service) to analyze log data. Built Python connectors between the diverse backend systems of MaROS and Splunk. Created client-side script to collect user data into Splunk. Created linear models to alert for potential future errors using Java Management eXtensions (JMX) data. Used Docker API to collect analytics on running containers. Built Docker images, init- and health-scripts for easy integration with in-house installers. Created documentation in Confluence and technical reports in LaTeX.

Documents: Resource Monitoring and Analysis of Mars Relay Operations Service (MaROS) using Splunk (pdf) 

Washington State University

Web Development, ASCC • Pullman, Washington

August 2018 — April 2019

Maintained existing web software using .NET used in Reinstatement and other academic success programs. Built several new web-applications in .NET and designed new schema in Microsoft SQL Server.

ThriftBooks.com

Software Developer • Seattle, Washington

September 2015 — October 2017

Developed for web applications using C# ASP.NET for MVC and legacy Webforms. Created React components, coupled with Redux. Used Babel for transpiling ES6 to better-supported Javascript. Created Windows Services for inserting and updating data via Google Merchants and Bing Ads Content APIs. Designed and developed many A/B tests using Optimizely and Maxymiser, optimizing user interfaces for clicks, revenue, and other conversions. Extensively used Git with TFS, among a team following agile methodologies.

Ozone International

TriStata Group
Software Developer • Bainbridge Island, Washington

January 2014 — September 2015

Designed and developed RESTful API using Node.js and Restify (previously PHP) to monitor hundreds of machines on a global network. Created front-end using AngularJS and Bootstrap following responsive design guidelines, while using Grunt to run various tasks. Focused on user-experience and scalability. Used both git and svn for source control. Managed MySQL server on Windows Server and Linux. Used Microsoft Dynamics NAV OData RESTful API with Node.js to create an interface for intranet users. Displayed machine documentation using Mozilla's PDF.js. Used Mocha framework for writing unit tests on the backend API.

Projects

Blackboard-esp32

August 2020 — present

A wrapper for the on-board ESP32 on the RealDigital Blackboard, a Xilinx Zynq development board. The library communicates with the ESP32 via UART and contains wrappers to implement the ESP32's AT command protocol. The wrapper allows developers to easily enable internet connectivity and perform HTTP operations.

Currently, the library contains basic functionality for establishing TCP sockets and a simple HTTP client.

Blackboard-esp32 Github

Cougs in Space

Software Development • Washington State University

Fall 2018 — Fall 2019

Periodically building software used in a small satellite (a 1U cubesat) launching in mid- to late-2020. Contributed to an interface for flashing devices in-space over JTAG using C++. Used Mbed OS libraries.

Cougs in Space

Amada Miyachi IoT Demo

Fall 2017

With a small team, we built a proof-of-concept IoT web application used to monitor welding machines. Used Express to serve documents from a MongoDB dataset. Created attractive & maintainable front-end with React and Recharts, streaming data with Socket.IO.

Blessedoo

Main developer

January 2015

Created a small wrapper for Blessed, a cross-platform curses-like TUI library. This wrapper allowed users to create XML to create the interface, abstracting away some of the complexities of the native Javascript library.

Blessedoo Github

UOJS

Main developer

January 2015

In an online team on Github, we began creating an open-source web client for the game Ultima Online. Uses React, and websockets to update a hierarchical Redux store. For 3D rendering, it uses react-three-renderer, an abstraction of Three.js for React. Utilized C++ for efficient native Node.js addons.

UOJS2 Github
Also contributed to: iNaturalist.org, TorChat-sharp

Awards and Scholarships

Boeing Outstanding Undergraduate Student Scholarship

May 2019

Voiland College Outstanding Sophomore in Computer Engineering

April 2019

Physics Textbook Scholarship

September 2018, May 2019