My Work

Radar and Data Acquisition Systems

Real-Time Software & Embedded Development

I work with Shenandoah Solutions, Inc building a radar system. I am involved with all aspects of system development, including requirements determination, system and software design, hardware configuration, calibration, server administration, in-lab integration and testing, and field testing.

My largest responsibilities include software design, development, testing and debugging. I write software that controls ADC/DAC for transmission and data acquisition, real time data recording, real time data streaming over 10GbE networks, and Automatic Information System (AIS) processing from maritime vessels over VHF radio.

  • Real-Time, Embedded Systems Development
  • Hardware & Software Integration
  • Software Design, Development, Test & Integration
  • Automatic Information System (AIS)
  • Linux System Administration
  • C/C++, Perl

Fun Stuff

Tweet-A-Brew

Fermentation Temperature Monitor

Fermentation Temperature MonitorTweetABrew is a project I created to monitor my home brew temperature during fermentation. It uses an Arduino, DS18B20 temperature sensor, and an LCD screen. Once fermentation begins, you give it a temperature range. It tweets the temperature hourly or when the temperature is out of range.

 

 

 

Emotion Classification (Master’s┬áThesis)

Using Machine Learning on Streaming Physiological Data

The goal of my M.S. thesis was to use machine learning to classify emotions with streaming physiological data. I implemented sliding window to extract features of most recent data points from a data stream. Then I implemented a random forest classifier in C that predicts the emotion from these features. The data streams are simulated Perl and inter-process communication.

Exon/Intron Boundary Finder

Bioinformatics Library In Perl

The Exon/Intron boundary finder uses a statistical template to predict the exon/intron splicing sites. Given a FASTA file containing a known gene, it uses BLAST to find the gene in other species. Then it uses the template to find the boundaries before splicing the exons together.