Engineer with more than a 15 years of professional experience in
software design and implementation. Experience
ranges from high level object oriented design and programming to
embedded low level and assembly programming. Bachelor of Science
degree with majors in computer science and mathematics and minors in
physics and electronics.
Skilled in Java and C# development, designing modular object oriented
architectures and data structures.
Notable Java projects include custom GUI interface elements such as a
feature rich time-line control and distribution flow controls, and
network communication layers. Past C# projects include image
enhancement software, LOD based map displays, and communications
While at Spillman, I was a primary architect for a Java
based GUI client to replace a legacy terminal interface. This greatly
extended the lifetime of our legacy UNIX server applications, while
adding significant functionality to our flagship product.
Experienced in low level coding in C/C++ focusing on algorithms, clean design and
efficient use of resources.
Notable projects include embedded path planning algorithms for robotic
vehicles, plug-in architecture for image manipulation and processing,
and efficient vector algorithms for geometry and street segment
While at Autonomous Solutions, I rewrote the low level communication layer
for the company's flagship command and control product, achieving an
order of magnitude reduction in both latency and CPU load and
tremendously increasing the product's responsiveness.
Outside of work I'm an omnivorous reader who loves to learn, interested in
fields ranging from molecular biology to cosmology. Frequents
technical news sites as a jumping off point for further reading and
Space Dynamics Laboratory – Logan Utah 2009 – 2015
Primary designer/engineer for projects in the C4
Implemented image enhancement and processing tools for reconnaissance images.
Built both thick and thin clients for DHS exercises involving simulation of critical national infrastructure.
Designed and implemented web based collaborative tools and UI visualization elements.
Worked on an image processing plug-in architecture for automatic target recognition.
Autonomous Solutions, Inc. - Petersboro, Utah 2006 – 2008
Robotics command and control software, network and serial communications and embedded programming for robotic vehicle systems.
Redesigned and implemented communication framework which greatly improved responsiveness and efficiency while reducing latency by an order of magnitude.
Primary architect for an on-board Vehicle Intelligence Component (VIC) which provided proximity monitoring, data collection, logging and fault monitoring.
Worked on algorithm design related to robotic vehicle path planning.
Involved in the DARPA Urban Challenge, implementing on-board path and command spooling components and developed a framework to simplify JAUS
message construction and parsing, replacing the error-prone hand coding for serialization/deserialization of byte streams with
modular objects that provided automatic conversions.
Designed custom software elements for GUI feedback of robotic implement position and status.
Design and programming in C/C++, C#, and some Java on Windows, Linux, and μC/OS platforms.
Software Engineer / Product Architect
Spillman Technologies Inc. - Salt Lake City, Utah, 1998 – 2006
Software design and development for client/server database products and support software.
Designed and implemented a fast and reliable UDP communication framework
allowing dynamic virtual connections, while providing a persistent
link for a stateful client/server application.
Worked on GIS applications and designed and implemented custom algorithms
for efficiently retrieving map data elements for use in shortest
Was a primary architect for a Java based GUI client. This helped to
extend the lifetime of their legacy UNIX server applications, while
adding significant functionality to their flagship product.
Designed and implemented a framework for automating the work of a large scale
database conversion and merging project, which required extensive
data conversion and remapping.
Developed an automated testing environment to facilitate fast QA, while using
extensively diverse system configurations.
Languages used routinely included Java, C#, C/C++ and Perl under UNIX, and
Physics Department, Utah State University – Logan, Utah 1995 – 1998
Taught calculus based general physics lab and recitation courses.
Class instruction, development of exams and quizzes, grading, and personal tutoring.
UNIX System Administrator
Department of Mathematics, Utah State University – Logan, Utah 1994 – 1995
for department network of Sun workstations. Responsibilities
included installing/updating software and hardware, networking,
system programming and other system administration activities.
departmental web server and department/staff web pages.
scripts to automate frequent tasks such as automatically creating
and configuring dozens of user accounts at once for department
Center for Atmospheric and Space Sciences, Utah State University – Logan, Utah 1994
server installation and maintenance. HTML / CGI programming for CASS
on atmospheric simulations.
UNIX System Administrator / Microcomputer Coordinator
College of Mines and Earth Sciences, University of Utah – Salt Lake City, Utah 1991 – 1994
for the college network of Sun workstations
Software and hardware maintenance
Fortran, C and UNIX-shell programming, creating / maintaining user accounts
Debugging and trouble-shooting hardware and software issues, and answering users' questions.
Maintained departmental Macintosh and Novell networks.
Commissioned scientific data visualization programming converting data sets into 3D models and images.
Bachelor of Science Degree in Mathematics and Computer Science
Southern Utah University, Cedar City, Utah, 1991
Double majored in mathematics and computer science.
Double minored in physics and electronics.
Grade Point Average 3.6, Dean's List
Awarded 4 year full tuition departmental scholarship in Physical Science
Won academic award as the Outstanding Student in Mathematics/Computer Science,
study in physics at Utah State University.
Teaching Assistantship in Physics, 1995 – 1998
E 100 S
Hyrum, UT 84319