8888 Black Pine Lane
Whitmore Lake, MI 48189
(734) 449-8779 firstname.lastname@example.org
12/1999 - Present -- President/CTO
Noumena Corporation, Whitmore Lake, MI
Design, develop and deploy consumer application for writers. Editomat
helps writers self-edit and improve their prose.
Update and upgrade large GUI from Tcl 8.4/Tix to Tcl 8.6/TclOO.
GUI to control CAM-bus system via Peak USB-CAM interface.
Investigate thread behavior in Tcl kernels between 8.4 and 8.6 to identify
and repair change that degraded performance.
Expert Witness in Intellectual Property suit. Compiled and demonstrated
operation of pad++ Tcl GUI on 2001 era Apple hardware
Ongoing maintenance and enhancement of web-based medical journaling system.
Design and develop prototype of secure medical messaging system for mobile devices
with Apache, Rivet and MySql.
Design and develop system for securely tracking and controlling medical records.
Developed and presented first semester computer science
course using Tcl/Tk as the base language as Adjunct Faculty at Eastern Michigan University.
Mentored student in Google Summer of Code 2008, 2009. Student developed package to convert
from Tcl/Tk screen display to PDF format.
Developed training materials for Tcl/Tk, SQL Linux, XML, network analysis hardware, firewall
configuration, web based applications, and testing tools.
Delivered training sessions in the US, Canada, Europe, Central America and India.
Installed and maintained DoD "Secret" (compliant with NISPOM Chapter 8) computer network. Computers included
Windows XP and Linux based systems.
Developed test framework and rules for exercising and characterising the behavior of a firewall and network.
Designed and developed database and data mining application for US Navy to track equipment failures.
Major member of team which developed an integrated simulation of flood and fire recoverability on naval vessels for US Navy.
Designed and implemented Linux diskless blade cluster for coarse grained parallel processing.
Designed and developed task scheduling application to run simulations on multiple remote processors.
Designed and developed applications for analyzing data from Navy shock testing.
Designed and developed interactive data-mining and report generating application to analyze results from ship
Participated as team member to write a 600 page report describing the results of a 2 year
Organized several 1-week technical conferences for 30-50 attendees in multiple cities.
Developed Tcl/Expect front end for collecting Cisco router data from remote sites.
Developed several Tcl/Expect applications for collecting and pre-processing data from remote sites via FTP and HTTP.
Designed and implemented Tcl package to interface with Foxboro manufacturing control system.
Designed and implemented Tcl extensions to interface with Tegra color sorter for manufacturing line.
Generated designs and prototype for conversion of large scale legacy projects to distributed web applications.
Generated designs and prototype for secure web based scheduling system.
Developed data mining tools for recreating development history from system backups.
Developed automated network router monitor to retrieve operating statistics.
1/2010 - 5/2010 -- Adjunct Professor
Eastern Michigan University, Ypsilanti, MI
Developed and taught Introduction to Programming for Network and Security Administration majors.
Tailored lectures to introduce students to software techniques (variables, loops, procedures, recursion) using
system administration problems and solutions.
1/1999 - 5/1999 -- Lecturer
Grinnell College, Grinnell IA
Ranked # 11 in US by US News and World Report
Taught first and second semester Computer Science courses.
Developed tests and student exercises.
Consulted and assisted with network security issues.
Proctored computer lab and tutored individual students.
Introduced large-scale, multi-student software project to second semester curriculum.
10/1997 - 12/1999 -- Principal
Flynt Consulting Services, Dexter, MI
Provider of timely software solutions
Developed GUI to allow unskilled users to enter handwritten census forms into a database.
Application was designed to mimic the hardcopy forms and provide input sanity tests in real-time.
Participated as team member in design and implementation of a multi-feed,
internet-based data collection and processing system.
Developed client/server voltage control subsystem for 7x24 test facility.
Developed Tcl/Tk based inventory control database package
Performed IP firewall/network administration
Configured Linux based firewall system
Designed and developed automated E-Mail robot
Created Tcl extension based on private library for regression
Developed Client/Server application for mixed Unix/MS-Windows
Maintained 7x24 hardware test facility.
5/1996 - 10/1997 -- Sr. Research Engineer
First Virtual Holdings, Inc, San Diego, CA - Ann Arbor Office
Developed automated testing package for regression testing software.
Upgraded SafeTcl interpreter from Tcl 7.3 to Tcl 7.6.
Participated in design and prototyping of new commerce models.
7/1993 - 5/1996 -- Sr. Engineer
Applied Intelligent Systems, Ann Arbor, MI
Machine Vision using a SIMD parallel computer
Responsible for designing and implementing automated testing suite
for computers manufactured by AISI.
Responsible for migrating that test package to an outside
Responsible for maintaining and enhancing four machine vision
projects with 2 major customers.
Implemented a source code control system, database for bug tracking,
and automated testing for controlling these projects.
Designed and implemented automated test package for software
Responsible for designing and maintaining software diagnostics.
Designed and implemented a package for backing up disks that aren't
NFS mounted across the network from a central machine.
1/1992 - 7/1993 -- Member Tech Staff
Computational Biosciences, Ann Arbor, MI
X-Windows/Unix based DNA Sequence Analysis package
Designed and implemented distributed processing subroutine package.
Designed and implemented interprocess communications using pipes and
shared memory for use with and without X Windows.
Designed and implemented interprocess communications using sockets
for use with X Windows.
Designed and implemented a distributed make for compiling code on
multiple machines on a network. This reduced a 2 hour compile to 20 minutes.
Designed and implemented GUI widgets under X-View.
Designed, implemented and maintained a source code control
environment based on RCS that
Automatically validated code before allowing a user to check in code
Automatically generated makefiles & dependencies
Automatically included new code in libraries
Automatically generated new executables
1/1990 - 1/1992 -- Vice President / Engineering Mgr
Veracity, Inc., Walled Lake, MI
MS-DOS based display package for large images.
Designed and implemented major portions of the device independent
graphics, human interface, and file access portions of the package.
Responsible for design and maintenance of infrastructure necessary to
coordinate four people working in a distributed environment, including evaluation and
purchase of software and hardware tools.
Responsible for coordinating programmer effort, assigning tasks, and
adhering to schedule.
Responsible for finding and hiring new personnel.
5/1988 - 1/1990 -- Senior Programmer/Manager
Cimage Corp., Ann Arbor, MI
Port Cad/Cam graphics package from MS-DOS to Unix/X platforms
(Apollo, Sun, and IBM RT)
Acted as Team Leader on the IBM RT port, coordinating efforts of 6-12
programmers at various times.
Ported large sections of graphics code from IBM/PC graphics to
Developed a malloc library that would check for memory errors.
3/1986 - 5/1988 -- Consultant
Resource 1, Lansing, MI
Contract programmer. Completed two one year contracts at customer
"x" to pseudocode translator using lex and yacc under Unix.
Designed and implemented prototype for source code control and
revision update system. This system automatically updated client sites and received
confirmation via phone network. Automatically updated database upon confirmation of
Evaluated diagnostics requirements, established bug report
Participated as team member developing a Point of Sale controller for
intelligent remote sales terminals. Contributed to both design and implementation of this
Direct responsibility for design and implementation report generation
and data editor. These routines featured formatted screens and context sensitive help, and
could be used without training, or manual.
Designed and implemented multilayer B tree for part of database.
8/1981 - 3/1986 -- Systems Engineer
Bioimage Corp., Ann Arbor, MI
68000/Unix based system for analyzing 2-dimensional electrophoresis
Driver for Parallel DMA board under UNIX operating system.
Modified driver for Eikonix scanning array camera.
Wrote device drivers for DMA graphics systems.
Device independent support library for graphics display systems under
Programs for curve fitting to multiple gaussian curves using
Newtonian, Least Squares and Simplex algorithms.
Floating Point Math package for MC 68000 UNIX computer
Disk support subroutines for non-DEC directory drive on 11/23
Terminal emulation program with file download capability.
Major responsibility for evaluating and choosing equipment to use for
image analysis system. (computer, camera, graphics display system).
Full responsibility for assembly, testing, and installation of
Performed sales demonstrations at customer sites.
Performed customer training.
Responsible for managing field service program. Instituted database
record keeping, supervised staff, set schedules.
8/1981 - 1/1997 -- Contract Programmer
Small projects for different clients
Performed IP network administration
Configured Linux based firewall system
Designed and developed automated E-Mail robot
Performed Usenet news administration
Designed and developed database and conferencing package
Designed and developed database package including screen editor,
sort/merge, report generation and backup for industrial hearing testing system.
Designed and developed screen control subroutine package to extend RM
Designed and developed hardware/software package for taking an image
from a video camera and printing it on a line printer on 8088 based IBM PC/Dos 1.0.
Designed and developed program to log into Compuserve, get current
quotes on selected stocks, and merge the new data to previous data base.
Designed and developed subroutine package to support TU-58 in non-DEC
Designed and developed Small Business Accounting and Payroll
Designed and developed automated upload/download routine for text
4/1981 - 8/1981 -- Contract Programmer
Software Services Corp., Ann Arbor, MI
Package to convert from screen graphics to hardcopy slides
Implemented package to accept image data in vector format and
translate it to run length encoded pixel format
Designed and implemented program to operate a Celco camera.
8/1979 - 3/1981 -- Programmer
Applied Dynamics Int., Ann Arbor, MI
Software support for hardware development engineering
Diagnostics for debugging microwave communications interface.
Device driver for DMA interface to Perkin Elmer 8/32
Debugged and improved sort/merge utility on 11/34
Rewrote hardware manual for AD10 array processor
Developed subroutine library for DMA access between PDP 11 and AD10
6/1978 - 8/1979 -- Technician
Gelman Scientific Inc., Ann Arbor, MI
Quality Control support for testing and manufacturing
Programming PDP 11/03 (RT-11) for lab database and statistics
Debugging Plotter driver (Fortran and MACRO)
Programming PDP 11/03 to operate a device to determine pore size
distribution in membranes
6/1975 - 1/1977 -- Research Technician
SUNY Research Foundation, Syracuse, NY
Isolation and identification of natural products released from
insects, and plants.
Performed vapor pressure analysis of Disparlure.
Purified compounds via Gas Chromotagraphy.
Identified compounds with Mass Spectrography, NMR, IR and UV.
Linux Shell Cookbook Packt Publications, 2017
Tcl/Tk: A Developer's Guide Morgan Kauffman, 2002, 2013
"Real-World Program Design in CS2 - The Roles of a Large-Scale, Multi-Group Class Project" SIGCSE Bulletin, Vol 32, No 1, March 2000 (Coauthored with Dr. Samuel Rebelsky, Grinnell College)