Computer Science Minor. Focused on digital systems.
Worked on automotive hypervisor team.
Protected hypervisor from DRAM hardware attacks by moving memory allocations to encrypted memory region.
Implemented framework for fuzzing the hypervisor's hypercall interface from a VM.
Added feature for native processes to have separate page sizes.
Worked with INTEGRITY RTOS and embedded platforms including ARM64, MIPS, PPC and x86 targets.
Added support for new targets to the INTEGRITY Multivisor hypervisor.
Increased guest VM storage read throughput by 1.5x.
Added support for dynamically migrating devices between guest VMs.
Added support for new Linux and Android guest VMs.
Wrote Universal Flash Storage, SD/eMMC, Ethernet, USB, clock, and SCIF drivers.
Added features to file systems and improved performance of storage devices.
Did board bring-up on new targets with INTEGRITY RTOS.
Wrote safety-critical drivers to ISO 26262 standards.
Followed Automotive SPICE development procedures.
Wrote software requirements, detailed designs, test procedures, and tests.
Debugged issues with and improved the performance of a high-speed FPGA communication channel on a JTAG probe.
Added assembler, linker, and simulator support for a new instruction set architecture.
Designed and implemented compiler, assembler, and linker optimizations and features.
Delivered releases to customers and provided ongoing technical support.
Led small teams of other engineers.
Programmed everything from embedded microcontrollers, to
wearable sensors, to inertial measurement units, to 3D
simulations, to Android applications, to software vision
algorithms.
Primarily programmed embedded and
performance-critical software in C or C++ and GUI applications
in Java.
Managed 19 NASA Academy interns. Organized trips and events
across the country. Set up meetings with leaders of the space
industry.
Implemented joystick support for 3D game engine in OS X and
Linux. Programmed iRobot Create to be JAUS compliant (Joint
Architecture for Unmanned Systems). Developed a menu system for
a LCD character display.
Worked as a part of a team programming a robot in C to map its
surroundings with a LIDAR (LIght Detection And Ranging) scanner.
The robot was designed to autonomously map its environment and
transmit the map data to other robots for navigation.
Worked as an intern at AnthroTronix through the NASA Robotics
Academy. Programmed a PIC microprocessor to interface between
motor driver boards, sonar sensors and a PC. Programmed a Java
GUI to provide basic control to a
robot over a network connection.
-
Proficient in C, Python, Bash, Assembly (ARM64, MIPS, PPC)
-
Less frequently used: C++, C#, Java, PHP, Java Script
-
Design and implementation knowledge of ARM, PIC, AVR and Freescale
microprocessors
-
Advanced knowledge of Linux
-
Experience with embedded operating systems (Linux, INTEGRITY)
-
Proficient in reading schematics and debugging hardware issues with an oscilloscope
-
Eagle Scout