Kenneth J. Stauffer
12410
Alameda Trace Circle (Apt. 1732)
Austin, TX. 78727
ken@stauffercom.com
(512) 335-3799
Senior Software Engineer
I am a software developer with over twenty years of experience. I am seeking a new programming position with a company for whom my skills will be valuable.
My background includes the development of many complete C/C++ applications including, design, implementation and documentation. I have developed high performance back-end servers as well has rich graphic intensive applications. I have worked with many databases and have an in-depth understanding of the SQL language. I have experience using object oriented techniques such as inheritance, templates, and design by contract. One of my technical specialties is language design and compiler writing. I have written software for the Oil & Gas, Biotech and Education Administration industries.
WORK EXPERIENCE
XSPRADA Corp., Senior Software Engineer Feb. 2008 – Jan. 2010
Austin, Texas
·
Developed a SQL translator using C/C++ and a third party parser
generator called ProGrammar.
·
Added extensions to the SQL language for temporal queries.
·
Implemented algorithms to optimize SQL sub-query expressions into
a series of flattened JOIN operations.
·
Attended math classes on Set Theory and Abstract Algebra from
XSPRADA's Principal Mathematician.
·
Implemented a parser for a
proprietary database control language. GNU Bison was used.
·
Implemented math operations for Intel Decimal64 encoded values.
·
Implemented finite state machines for parsing ASCII formatted
values. This included parsing Dates, Times and Floating Point values. Required
to detect all overflow/underflow conditions.
·
Used the boost C++ libraries to implement Date/Time math operations.
·
Interfaced product with a third-party license manager called Reprise
License Manager.
·
Modified the main product to run as a Windows service.
·
Implemented a validation tool for finding data errors in large CSV
(Comma Separated Values) files.
·
Implemented a tool to automatically generate HTML documentation
from a database containing a matrix of operations and data types. This tool was
written using Perl and SQL Lite.
·
Developed several scalable database operations designed to run on
multi-core/multi-disk systems. These operations used threads extensively and were
able to processes data sets greater than 1TB.
·
Ran
extensive benchmark tests using large data sets (up to 1TB). Did comparative
tests with SQL SERVER and other database products. The TPC Benchmark (TPC-H)
was one of the benchmarks used.
·
Developed a regression
test program for ensuring SQL translations matched the expected output.
·
Worked
closely with the documentation department to externalize and improve SQL error
messages.
·
Gained experience
with Compuware profiling and bounds checking tools.
Relativity Technologies, Software Consultant Jan. 2004 – Dec. 2007
Austin, Texas
· Developed an OpenROAD plug-in for Relativity's Modernization Workbench product. This was used to analyze the call graph for OpenROAD programs and also calculate software metrics. (OpenROAD is a high-level programming language from Ingres).
· Developed a parser for IBM's RPG language. This became another plug-in for the Workbench product. It was written in C++ and Yacc using Windows Visual Studio.
Golden Helix Inc., Software Consultant Jul. 2004 – Oct. 2005
Austin, Texas
·
Wrote a parser for the SMILES language
(Simplified Molecular Input Line Entry Specification). This library was written
in C++ and Yacc using Visual Studio.
BAE Systems, Software Consultant May 2001 – May 2002
Austin, Texas
· Developed a translator to convert a legacy programming language into Visual Basic. The GUI application allowed users to load projects in a tree view and activate/deactivate various translation options. It was written in object oriented Eiffel and Microsoft Foundation Classes.
Informatica Corp., Senior Software Developer Feb. 1999 – Feb. 2001
Palo Alto, California
·
Developed
module for interfacing main product with IBM's MQ Series.
·
Developed module for interfacing the main product with SAP.
·
Ported entire product to work with a new C++ compiler and platform
(HPUX).
·
Internationalized product using Unicode string libraries to
replace STL strings. Externalized all error messages.
·
Used STL container classes extensively.
·
Was trained on how to use Informatica's Power Center product(s).
Hewlett Packard, Software Consultant Oct. 1997 – Feb. 1999
Mountain View, California
·
Developed a C/C++ application for validating Hewlett Packard sales
orders. Designed a business rule specification language and a byte-code
compiler.
·
Developed a translator for converting OpenROAD programs into
Visual Basic. This tool reduced the time needed to port a large order entry
system, by allowing all the legacy source code to be converted to the target
language.
Nextron Communications Inc., Senior
Software Developer Oct. 1996 – Oct. 1997
San Jose, California
·
I was the primary
developer for the "Easy Site Web Development Workbook" product. This product was a template-based website
builder for online customers and Office Depot workbooks. Was implemented using
a combination of C, Oracle, and Perl.
·
I managed a
three person team of developers.
MCI, Software Consultant Sep. 1995 – Oct. 1996
San Jose, California
·
Involved with a large C++ project for MCI’s call processing. Was
responsible for the customer taxation component.
Photon Systems Ltd., Senior Software Developer Nov. 1991 – Aug. 1995
Calgary, Alberta
·
Developed a reusable library for parsing math expressions. Written
in C.
·
Designed and implemented a self describing file format for
expressing scientific data efficiently in ASCII.
·
Primary developer for the 'xsection' application, a highly
graphical and interactive application for geologists to view cross sections.
This application was written in C and used Microsoft Foundation Classes.
·
Developed the 'mapplot' application. This was a 2D mapping program
for navigating a large database of geological well data.
·
Developed reusable library for converting between Latitude/Longitude
coordinates and UTM coordinates.
·
Developed a hypertext help system using Motif/X.
·
Developed an electronic data delivery system for the exchange of large
well data files between customers. Written using a combination of shell scripts
and UUCP (Unix to Unix copy).
University of Calgary, System Administrator Aug. 1990 – Nov. 1991
Calgary, Alberta
·
System
Administrator for a large network of Unix workstations and VT100 terminals.
Maintained Sun and Vax 11/780 servers.
·
Developed a
special Line Printer Daemon for handling the printing needs of the computer
science department. (C, Unix).
·
Ported a C++
compiler (Cfront) to work on the SGI platform.
EDUCATION
Computer Science, B.Sc, University of Calgary, 1990