Created by Magical Gnomes!

Work / Research

World domination at all costs

Starting June 2009 I joined Purdue University's Rosen Center for Advanced Computing (RCAC) as a Software Engineer. I was also a part time doctoral student under the direction of Prof. David G. Meyer until May of 2013, when I received my PhD in Electrical and Computer Engineering. I concluded my alliance with the evil empire in December of 2016. Beginning January of 2017, I very gratefully accepted a position with Purdue's Department of Computer Science as an Assistant Professor of Practice.

Purdue University Department of Computer Science

Assistant Professor of Practice - January 2017 to present

It is by far one of the greatest privileges and honors of my life to serve as a faculty member in Purdue's Department of Computer Science. Joining such a world-class group of researchers and academics, as well as an amazing staff, is without a doubt one of the best parts of my life. I am thrilled to be back in the classroom teaching. Being able to engage with the students, faculty, staff, and larger community in such a role is exceptionally exciting.

Purdue University Rosen Center for Advanced Computing

Software Engineer - June 2009 through December 2016

RCAC can probably best be described as the research arm of ITaP (Information Technology at Purdue). In this capacity I work with the Hub Technology Group on HUBzero, a "platform for building powerful web sites that support scientific discovery, learning, and collaboration. Originally created by researchers at Purdue University in conjunction with the National Science Foundation (NSF)-sponsored Network for Computational Nanotechnology (NCN) to support, it now supports a wide variety of other hubs." HUBzero's mission is essentially to "revolutionize the development of cyberinfrastructure for scientific collaboration."

My role with HUBzero consisted of two main activities. A not insignificant portion of my time was spent on system management and administration. Primarily, however, my role was software architecture and development. I lead and completed a number of software projects including the creation of a FUSE file system driver to mediate access to git repositories via SFTP, the integration of a Verilog-A model checker into the front-end CMS, and of course my primary project: the development of a new distributed virtual operating system. I lovingly refer to it as "Skynet," though its official name is "Metachory:"


Microfluidic Innovations, LLC

Engineer - September 2009 through December 2011

As the initial sole employee of this startup company, I was engaged in just about every aspect of the product design and construction. Various tasks ranged from part selection to printed circuit board (PCB) design as well as schematic capture. I also did a fair amount of soldering.

I gained a working familiarity with the open source gEDA software suite, PIC microcontroller assembly, BeagleBoard internals, the I2C bus specification, and hardware considerations related to devices with considerable inductive discharge.

In short, I designed an entire digital control system and interface from the ground up.

Purdue University Network for Computational Nanotechnology (NCN)

Graduate Research Assistant - January 2008 through May 2009

My research project and thesis topic involves research into distributed, virtual operating systems. As time progresses more information regarding my thesis will become available.

In the mean time, feel free to check out NCN's website. In particular, my research relates fairly closely to nanoHUB.

Purdue University Engineering Computer Network (ECN)

Graduate Research Assistant - August 2006 through December 2007

Assisted in the development and testing of storage area network (SAN)-related devices, software, and firmware. Sadly, a good portion of this project is covered by a NDA.

Purdue University Engineering Computer Network (ECN)

Graduate Research Assistant - August 2004 through August 2005

Managed various aspects of a grid computing project involving Sun Microsystems and Purdue University. This involved developing and implementing scripts allowing interoperability between ASIC design software and Sun's GridEngine as well as collecting and analyzing hardware usage data to evaluate the effectiveness of GridEngine and Sun Ray Server software.

Here is a presentation that Dr. Johnson gave on the project.

Purdue University Low Power VLSI Laboratory

Undergraduate Research Assistant - August 2003 through December 2003

Assisted in the development of low power SRAM cache, utilizing Cadence Virtuoso to perform transistor-level design of clock subsystem (implemented as a ring oscillator) as well as hSpice to simulate and test for errors.

Purdue University Division of Financial Aid

Peer Counselor - May 2002 through May 2004

After a six week training period, we were granted access to core academic systems for the university including the registrar (grades), financial aid, and the bursar (billing). This access was utilized to provide telephone and face-to-face counseling of students and parents regarding financial aid questions and problems.

This position also entailed assisting in the training of newly hired peer counselors as well as extensive knowledge regarding the policies and requirements governing federal aid programs (eg, the Stafford Loan program, Pell Grants, Perkins Loans, etc) and university-specific aid including academic and need-based scholarships, grants, and loans.

CnH Enterprises, Inc.

Systems Administrator & Database Developer - 2000 through 2002

I was the computer geek for a small company for three years. This entailed just about every conceivable task from configuration and maintenance of the local area network to repair of computer systems to setup and installation of new software.

Other tasks included the creation and management of the company website, the design and implementation of a bill of materials database using mysql and PHP, and even assisting the accountant in running payroll and managing accounts receivable and payable.