Overview

Flight software engineer at NASA with over 10 years of experience specializing in critical embedded software, computer vision and pose algorithm optimization, and software quality/reliability.

Currently working on the OSAM-1 mission.

Skills

  • Programming languages: C, C++, Python, Bash, and LaTeX
  • Optimization of image processing, computer vision, and pose estimation algorithms
  • Hybrid computing systems and interfacing with FPGAs for hardware acceleration of math/algorithms
  • In-space Servicing, Assembly, and Manufacturing (ISAM), space systems, radiation tolerant design, and sub-orbital telescopes
  • Linux and real time operating systems (VxWorks) on x86, PowerPC, and MicroBlaze platforms
  • NASA Core Flight System (cFS) and OSAL
  • Systems programming and Unix terminal (make, gdb, ssh, etc.)
  • Git version control, coding standards, static analysis (CodeSonar), process control, and CI/CD (GitLab, Jenkins, etc.)
  • Documentation with Doxygen, Markdown, and LaTeX
  • Basic knowledge of VHDL, Perl, Awk, Sed, HTML, CSS, PHP, and JavaScript
  • Basic knowledge of circuit analysis, PCB layout, astrophysics/cosmology, and particle physics
  • Fluent in English and Spanish, intermediate in French, beginner in Russian and German

Experience

Principal Flight Software Engineer

NASA Goddard Space Flight Center [Intuitive Machines]  (Greenbelt, MD)
Jan 2016 - present

Hybrid Flight Computing System (HFCS) Team
Code 480: NExIS (NASA Exploration and In-space Services)
OSAM-1 mission

  • Develop mission critical flight software in C and C++ on PowerPC and x86 architectures
  • Design software for VxWorks real time operating system and Linux using cFE/cFS framework
  • Optimize and implement various image processing, computer vision, and pose algorithms for autonomous spacecraft rendezvous and robot arm grapple
  • Interface with Xilinx FPGA cores for hardware acceleration of image processing code
  • Transform non-flight computer vision and pose estimation algorithms into flight-ready code
  • Improve code quality and reliability by writing well-documented code, performing code reviews, leveraging static analysis tools (CodeSonar), and unit/regression testing (UT-Assert, gtest)
  • Develop tools in Python and Bash for data analysis/plotting, image conversion, and latency analysis using libraries such as pandas, numpy, bokeh, etc.
  • Create command and telemetry specifications and operate ground system (ASIST and COSMOS)
  • Write and maintain official HFCS C/C++ Flight Coding Standards
  • Present technical information to reviewers at critical subsystem reviews (PDR, CDR, etc.)
  • Collaborate with other teams to solve complex problems in an interdisciplinary environment
  • Experience at multiple high-profile test campaigns with flight hardware (avionics, robotic arms, sensor, etc.) and ground support equipment
  • Teach Git version control to multiple teams at NASA
  • Lead intern program including writing position descriptions, interviewing, and mentoring

Research Assistant

European Organization for Nuclear Research (CERN)  (Geneva, Switzerland)
Aug 2014 - Jan 2015

ATLAS Experiment, Large Hadron Collider (LHC)

  • Research assistant to Dr. Tancredi Carli (quantum chromodynamics, proton-proton collisions)
  • Developed scientific analysis software in C++ and Python on SLC6 (Scientific Linux CERN 6)
  • Co-developed the C++ program Spectrum to plot experimental data, theory predictions, and PDF (Parton Density Function) convolutions
  • Created file format for Spectrum to parse data, grid, and PDF configurations
  • Interfaced with high-energy physics (HEP) libraries such as: ROOT, APPLgrid, LHAPDF, and FastJet QCD
  • Created the Spectrum website

Computer Engineering Co-op

NASA Goddard Space Flight Center  (Greenbelt, MD)
Jan - May 2014

Code 665: Astrophysics, Observational Cosmology Laboratory
BETTII Project

  • High-altitude far-infrared balloon observatory for star formation and active galactic nuclei
  • Interfaced with stellar image processing software in C and C++ in a Unix environment
  • Developed StarTracker software for Star Cameras
  • Interfaced between flight computer and FPGA with RS-422 shared buffer using C and LabVIEW

Computer Engineering Co-op

L3 Communications, Avionics Systems  (Grand Rapids, MI)
May - Sep 2013
  • Designed software to configure and test avionics instruments
  • Developed GUIs in C using LabWindows/CVI
  • Tested units under environmental conditions and analyzed data

Computer Engineering Co-op

Custom Electronics, Inc.  (Grand Rapids, MI)
Nov 2011 - May 2013
  • Programmed 8-bit Microchip microcontrollers in C using MPLAB X
  • Wrote software for scientific instrumentation buoys
  • Designed a series of eight electric guitar effect pedals
  • Designed electrical schematics and PCBs in Altium Designer

Education

B.S.E, Computer Engineering '15

Grand Valley State University  (Grand Rapids, MI)

GPA 3.957

  • ASEE CEED National Co-op Student of the Year 2014
  • Academic Excellence Award in Computer Engineering 2015
  • Oustanding Co-op Student 2015
  • Oustanding Senior in Computer Engineering 2015

Interests

Space, computer vision, cryptography, astrophysics, particle physics, travel, languages, backpacking, hiking, camping, dogs, brewing, LOTR, cocktails, and euchre