14050 Brougham Ct. Apt. 8
Plymouth, MI 48170
I am seeking a satisfying and enjoyable software engineering position starting
immediately. Professionally, I have created or maintained point of sale (POS),
fantasy sports management, product loyalty, operating system, financial
derivative trading, and computer aided design software. Specific domains I
have continually worked on include object, protocol, user interface, database
schema, network, and language design; conformance testing; and performance
SQL, HTML/XML, Tcl, the UNIX shells, and assembly. Graphical toolkits I have
coded to include Mozilla XUL/XBL, ExtJS, YUI, Gtk+/GNOME/Glade 1.x, Tk, AWT,
I am well versed in SQL and comfortable with MySQL, PostgreSQL, and Oracle.
Operating systems I have worked with include versions of Linux and Windows;
Solaris; and most UNIX variants. I have been a Linux developer for more than
twenty years, contributing mainly bug reports and minor fixes personally and
through my employers. My name can be found in the Linux kernel CREDITS file.
What I am most proud of is the work that I have done as part of the Linux
development team over the decades. My work is one small part of all two
billion Android devices, most websites, in-vehicle electronics, video game
consoles, and any other system that happens to be running Linux.
March 2009 through March 2017
sale (POS) system with multiple database backends (MySQL/PostgreSQL/Oracle).
Instituted best of Agile practices while achieving PCI PA-DSS certification.
Became the first VAR to be certified for stored value (gift) cards using an
interface to Chase Paymentech's NetConnect SOAP API that I wrote. Designed a
WSDL and SOAP server architecture for an online ordering module. Added the
ProfitPoint loyalty card system and made numerous improvements to the existing
Paytronix loyalty and stored value implementation, converting the system to
pure SOAP. Wrote a from-scratch interface to the First Data ValueLink gift card
system, driving the certification process to completion. Implemented a
JSON-RPC-based interface to the CaptureCode loyalty system. Added the LevelUp
mobile payment system to NetPOS. Added an interface to the HyperActive drive
thru interface. Further extended the JSON-RPC-based interface for stored value,
loyalty, and mobile payment integrations with Virtual Next, AppFront, and
Relevant Mobile. Implemented a SOAP interface to Heartland stored value.
February 2009 through June 2009
roster manager with industry-first live validation against league
specifications, completely replacing an aging Java applet
September 2007 through December 2008
back end of the My Coke Rewards Catalog Manager. As part of the crack iCoke
team, we achieved a zero defect product within six months. Moved on to
maintaining the iCoke 2.0 SOAP platform, where we also achieved a zero defect
count. During my tenure, the iCoke programming team achieved accolades from
Coca-Cola and was essential to ePrize's profitability
Cybernet Systems Corporation
December 2005 through December 2006
Maintained the NetMAX Operating System, a network appliance-targeted Linux
distribution with a web-based GUI written chiefly in Perl; solely responsible
for 5.5 and 5.51, the most thoroughly audited VPN releases to date; fixed
challenging bugs driven by corporate and customer input; ported the system to
new network appliance hardware; overhauled Cybernet's server infrastructure,
incorporating corporate customizations into the releases; improved mail system
performance while traffic tripled; backported a Linux kernel storage driver for
a specific customer application.
F & M Financial Trading Systems, N. V.
Software Engineer / System/Network/Database Administrator
July 1999 through October 2005
Designed a 270,000-line Gtk+/GNOME/Glade tablet/desktop trading application
for the Red Hat and Fedora Core Linux operating systems in C and XML; designed
a 50,000-line database daemon using C and PostgreSQL's libpq; designed
connection daemons using proprietary libraries supplied by the exchanges;
designed a daemon to supply theoretical prices to the system; designed the
software router and overall protocol to keep the system running smoothly;
maintained the SQL schema as system requirements changed; continually tuned
network bandwidth consumption, database use, and algorithms to increase system
performance; developed the system using exchange development networks, passed
all conformance testing, and used the system in production on numerous
exchanges for a total of approximately five years.
September 1999 through December 1999
Designed and implemented the Perl/DBI/MySQL-based backend for their domain
(.linux) registration system.
Summer Intern / Software Engineer / Tcl/Tk/Scheme/C Programmer
July 1998 through December 1998
Developed an HTML-based integrated documentation system in Tcl/Tk and Perl
to replace a proprietary system based upon FrameViewer; developed a database
visualization tool for Avant!'s next generation layout editor.
Summer Intern / Software Engineer / Java Programmer
May 1997 through August 1997
Developed a Java-based hierarchical design visualization tool using JDK
1.1.x; constructed a framework to interoperate with their C-based
Ford Motor Company
Scientific Research Laboratories
Summer Intern / Motif Programmer
May 1996 through August 1996
Designed a Motif user interface for an Xlib-based embedded microprocessor
execution simulator; revised the architecture of this project and added
multiple, simultaneous execution visualization modes.
Total Quality Stats
Linux Consultant / Java Programmer
April 1995 through October 2005
Helped build and maintain their Linux-based network; architected automated
FAX scripts for content delivery to their customers; maintained and extended
their Java-based sports statistics program; designed databases based upon
PostgreSQL to ease retrieval and maintenance of their sports statistics;
created and modified C programs to use their new databases; identified and
corrected bottlenecks in their web server through hardware upgrades and
software measures, such as transitioning to the Apache mod_perl extension.
University of Michigan
Computer Aided Engineering Network
Systems Programmer I / UNIX System Administrator / Java Programmer
November 1994 through July 1998
Oversaw the operating system upgrades of approximately 50 DECstations;
designed a Perl script to allow the DECstations to report system messages via
the syslog facility; developed a web-based statistics gathering program and
other tools in Bourne shell and Perl for CAEN's AFS-based distributed computing
environment; insured the correct day-to-day functioning of the DECstation
network via log file analysis; designed a configurable, standalone or web-based
replacement in Java for their web-based Perl/CGI realtime lab viewer.
October 1997 through Present
Wrote DHCP mini HOWTO for University of Michigan students. Wrote
configuration mini HOWTO's for sendmail 8.8.x and 8.9.x. Documented Linux
configuration of the Sony PCG-C1XS and PCG-F680 laptops. Documented Linux
configuration on the uncommon AMD K6-2+ and K6-III+ processors.
Linux Kernel Developer
November 1994 through Present
Credited Linux kernel hacker. Contributed minor patches directly to Linus
Torvalds. Maintained the totem and oplbeep packages. Early contributor to the
linux-kernel mailing list.
Free Software Developer
May 1994 through Present
Developed scripts to help University of Michigan students running Linux to
connect to the various computer networks. Became the campuswide Linux guru.
Contributed bug fixes and/or feature enhancements to freely available programs
such as SysVInit, slrn, xmille, tkman, dcon, mc, Wine, xlockmore, xscreensaver,
fontutils, fileutils, sh-utils, textutils, Mesa, xosview, nmh, gtk+extra, and
others. Contributed the configuration front-end to gnome-socket. Contributed
configuration suggestions and patches to various GNOME applications. Created
simple GUI-based versions of telnet and zwrite in Tcl/Tk. Wrote parsenews, a
Perl-based e-mail/Usenet news article beautifier. Maintained sortmail, a
header-based mail sorting program written in Perl. Contributed dozens of new
and enhanced RPM spec files to various projects, including GNOME. Early
contributor to Linux development lists.
April 1975 through April 1993
First BASIC code published at age 12 in Run Magazine. Developed mailing
label software and a printer driver for an automotive parts warehouse's
advertising brochures. Developed a French to English dictionary program,
complete with a redefined character set. Spent a year learning Pascal and
developed an unfinished implementation of Solitaire as my final project.
University of Michigan College of Engineering
September 1993 through April 1999
Pursued virtually all undergraduate coursework offered in Electrical
Engineering, Computer Engineering, and Computer Science for a total of 12
four-month semesters. Postponed graduation due to financial considerations
and interesting Linux software development opportunities.
- Engin 103: FORTRAN
- Engin 160: Technical Writing and Professional Communication
- EECS 270: Introduction to Digital Logic Design
- EECS 280: Programming & Data Structures
- EECS 284: Java, implemented a Java-based Solitaire card game applet
using JDK 1.0.2.
- EECS 303: Discrete Structures
- EECS 316: Signals and Systems
- EECS 370: Design of Microprocessor-Based Systems, designed and
implemented a software simulation of a register-rich, pipelined MIPS-like
- EECS 373: Design of Microcomputer Systems, designed and built an
80186-based computer, from the motherboard on up.
- EECS 380: Data Structures and Algorithms (C++)
- EECS 401: Probabilistic Methods in Engineering
- EECS 481: Software Engineering, designed and coded the class
hierarchy, graphical user interface, network protocol, and assorted pieces of a fully functional networked Euchre implementation using JDK 1.1.x.
- IOE 333: Ergonomics
- TechComm 498: Technical and Professional Writing for Industry, Government,
American Mensa (Membership number 100093630)
Amateur Radio Operator (Extra class callsign N8QDW)