September 1989 . . . October 1996

First Data Corporation
Lynchburg, Virginia

Senior Product Developer / System Support Specialist

Description...

Veritas Venture, Inc. was a company formed by an entrepreneur for the purpose of building special Artificial Intelligence programs for credit card dispute resolution for targeting a very specialized market niche.

On the systems side, I had complete responsibility for hardware and systems maintenance. The environment for which I was responsible consisted of nearly twenty machines running PcDos 4.x and OS/2 1.x using the OS/2 relational database and network facilities (including a bridge using a dedicated 64kb link between two networks in different states). I was responsible for the installation and testing of all hardware and software on all machines and for initial hardware failure diagnostics. Dozens of application packages were in use -- some PcDos, some Windows and some OS/2. In the early stages of the first project, beta releases of the compilers, debuggers and operating system were in simultaneous use causing additional support difficulty.

On the application side, I had complete responsibility for creating all interfaces to the OS/2 relational database in C and Smalltalk. I also contributed many classes to the Smalltalk application -- especially those which handle caching, mouse interface alterations and specialized storage classes. I also implemented a microsecond timer benchmarking facility for Smalltalk by building an OS/2 device driver to the timer hardware and providing a Smalltalk interface to the device driver to obtain accurate timings (the default timer resolution for OS/2 1.x was 31.25ms which is much too coarse for good benchmarks).

Additionally, I designed, implemented and tested a second generation AI engine in COBOL (selected by management for portability to the target environments) called RuleBox. It included a small, but complete interpreted formula language. This language required more than 30,000 lines of COBOL source for the combined lexical scanner, compiler and evaluator. I wrote the entire language package in 6 weeks with no known bugs in the code.

There was a parallel effort to develop a test suite for the language package of roughly comparable effort, where the only problems discovered by the use of the test suite were errors in the test data. In general, for systems level code (once the research phase was complete) I averaged less than one bug a week out of preliminary development and no known bugs out of final development. Almost all problems discovered with my designs and code have been isolated and confirmed as compiler, operating system or hardware problems.

I was also responsible for feasibility testing of C++ as an alternative development environment (which was not selected for actual development at that time). The different languages in use required the implementation of a special interface to the Microsoft's Programmers Workbench for COBOL, PVCS (a source version control system) and C++ while providing an extended WordStar functionality interface.

Veritas Venture, Inc. was then sold to First Data Resources (owned by First Data Corporation). During the transition, I rewrote the entire RuleBox application in C and initially supported the 16-bit MsDos, Windows 3.1 and OS/2 1.3 environments. Later I added support for the 32-bit OS/2 2.x, 3.x, WIN32s and Windows NT environments. Eventually all support for the 16-bit environments was dropped and support for the HP/UX environment was added. The code remained portable and stable through this entire evolution. Only three bugs were found in the production code. And none of those were reachable through normal application flow.

At First Data Corporation (in Lynchburg), I was responsible as Senior Product Developer for system support, handling all difficult problems encountered by the rest of the programming staff, and for local software configuration management. I also retained my programming duties.

One of my last assignments was to replace some existing C++ code which had roughly one bug per three lines of code (an 0.3 error rate!). This target code ran under Unix and Windows 3.1 and had to be completely redesigned and reimplemented. I designed, implemented and tested 50 C++ classes with a total of 40,000 lines of code in two weeks. This was an "open" project in that I was unable to compile and test my own code. Even so, only about six bugs were discovered during testing. Unfortunately, the initial understanding was that the code only had to run in 32-bit environments. This assumption turned out to be in error and it took another month to back-port the code to a 16-bit environment. None of this effort was due to bugs or design flaws, but rather to practical limitations of the 16-bit environment. Additional test programs were written by other programmers and the debugging of those test programs contributed substantially to the additional month in releasing the package.

Notes...

I was original employed by Veritas Venture, Inc. which was bought by First Data Resources, Inc. (owned by First Data Corporation) in August 1993. I remained with the company during the transition.

While working at Veritas Venture, Inc. I was approached by no less than three of my previous employers with job offers, some full time and some contractual. One even hired a detective to find me! However, even though some of these offers were tempting, I did not accept any of them because it would have been unfair to my employer.

Reason for leaving...

The Lynchburg office was closed, laying off all employees.

Languages...

Intel 386/486 assembler
COBOL
C
C++
Smalltalk
SQL

Hardware...

Intel 386 and 486 microprocessors
IBM PS/2 (models 70, P70 and 80)

Operating systems...

OS/2 (versions 1.2, 1.3, 2.0, 2.1 and 3.0)
NT (versions 3.0, 3.5 and 3.51)
MsDos (versions 4, 5 and 6)
Unix (HPUX version 9)

Software...

CodeWright
DB/2 for OS/2
HPux C++ (version 9)
IBM C/Set++ (version 2.0)
MicroFocus COBOL
Microsoft C (versions 6 and 8)
Microsoft Word
Tuxedo
Visual C++ (versions 2.0, 2.5, 4.0 and 4.1)
VisualAge C++ for OS/2 (version 3.0)
VisualAge C++ for Windows (version 3.5)
Windows 3.1 (version 3.1)

References...

Mark Feathers (520-319-0275)
Mark D.A. van Gulik (608-212-1012)
Katherine van Hook (434-846-4923)

Performance reviews...

YearRating...Comment...
19955.00Consistently exceeds expectations
19944.70Consistently exceeds expectations
19934.45Meets and sometimes exceeds expectations

Ratings are in the range of 0.00 to 5.00, inclusive. They are weighted averages of ratings for categories such as: Quality, Operational/Business and Business Management. Copies of the above performance reviews available upon request. Evaluations for years prior to 1993 were informal.


[ Last | [ Overview | Next ]