Welcome to my interactive resume. Please click in the plus-boxes to expand the various topics, and follow the more ... links for expanded essays on selected topics. For a printable version of this page, or if your browser has a problem with rendering my interactive resume, click here.

I am experienced in, and enjoy all aspects of, the software engineering process, from requirements gathering through coding, testing, deployment, and sustaining. I am seeking a position in Phoenix, Scottsdale, Tempe, Mesa, Chandler, or Gilbert Arizona that can utilize my talents and energy. I am also open to relocation for the right opportunity.

I am accustomed to working in a "team lead" model in which I am typically responsible for full life-cycle support from requirements through sustaining, and in which I interact with other domain specialists as peers as needed; I am flexible and adapt to other business models as well.

I am comfortable presenting and documenting computer topics for wide-ranging audiences, and have teaching experience from the community college/trade-school level to the graduate level. I enjoy mentoring my co-workers.

I look forward to discussing how we can apply my skills to meet your software engineering needs. Please see my contact information at the bottom of this web page. Thanks for your interest.

Experience by Functional Area

Programming: 30 years total experience

I began my computer-programming career in 1979 while I was working on my PhD dissertation in Chemistry, and I needed to fit some non-linear regression models to my data. The TI-59 calculator I started out programming was too limited, so I taught myself FORTRAN and began taking upper-level classes in Computer Science. Three decades later, I have a broad base of programming skills, as summarized below:

AJAX and LAMP: (see individual skills for total experience)

  • Used Asynchronous JavaScript and XML (AJAX) along with Cascading Style Sheets (CSS) and Document Object Model (DOM) to implement this web site and subscription mailing list.
  • Used Linux, Apache, MySQL, and PHP to implement this web site and subscription mailing list.

Java: 2 years total experience

  • Brooks Automation/Auto-Soft: Java/CORBA/Oracle/NT programming for semiconductor fab automation.
  • Remington College: courses taught include Java.

C++: 4 years total experience

  • Brooks Automation/Auto-Soft: C++ coding and testing.
  • Motorola: C++ and Motif UI/MX programming for semiconductor fab automation.
  • Motorola: TCP/IP protocol development for cell phone test harness.
  • CSK Auto: Y2K bug fixes.
  • Remington College/Education America: Teach Visual C++ Programming.

C: 5 years total experience

  • Brooks Automation/Auto-Soft: C coding and testing.
  • CSK Auto: Y2K bug fixes for C/C++ code.
  • Associate Computer Professional (ACP) Certification (ICCP, May 1991).
  • Pegasus Solutions: Reservation transaction processing in Solaris UNIX environment: C coding, unit and regression testing.
  • Motorola GSTG: Embedded 68030 programming in C and assembly language for cell phone test harness.
  • Quadras/International GeoGraphics: UNIX data entry system.
  • Systems Modeling Technology: Maintain Excelerator for Windows / Real Time.
  • Fidelity Investments: RTS Automated Warehouse Control Software.
  • Desert Micro: Maintain Route Manager for DOS application.

Visual Basic: 4 years total experience

  • SUMCO: Factory Automation with VB6 and FACTORYworks with Oracle SQL back end.
  • Freescale: Factory Automation.
  • Brooks Automation: Factory automation with VB6 and FACTORYworks (Client/Server).
  • Education America: Teach Visual Basic 6 Programming.
  • Desert Mountain Hospitality: Developed "group booking" application in VB 1.0 for DOS.

Ada: 1 years total experience

  • Research Associate on software testing project at Auburn University sponsored by Department of Defense.
  • Developed and taught graduate-level course on Ada at the University of Georgia.
  • ICCP Certification in Ada programming.
  • Associate Computer Professional (ACP) Certification (ICCP, November 1991).

Perl: 3 years total experience

  • Perl programming at Motorola GSTG, and Apache Web sites, Remington College.
  • CGI-scripting of book reviews web site, including search engine.
  • Static page generation of book reviews web site.
  • Manipulation of password files to migrate users.

Tcl/Tk: 3 years total experience

  • Freescale, Motorola: Wrote tool controllers for semiconductor processing tools.
  • Motorola: Wrote GUI front-end to problem reporting/tracking system.

JavaScript, CSS, and DOM: 1 year total experience

  • Used JavaScript, Cascading Style Sheets (CSS), and Document Object Model (DOM) to implement this web site and newsletter.
  • Used client-side JavaScript to support interactive resume web site.
  • Used client-side JavaScript to support interactive Computer Aided Instruction web pages.
  • Used JavaScript to resize captions to fit various screen resolutions and window sizes and to change menu appearance when the mouse hovers over a menu item on book reviews web site.
  • Taught JavaScript programming at Remington College/Education America.

Borne/Korn/C-Shell: 17 years total experience

  • Borne/Korn/C-Shell programming: Intel, Motorola GSTG.

Pascal: 6 years total experience

  • Knoxville Utilities Board - SCADA logging subsystem programming.
  • Auburn University - Department of Defense Project- Programming in VAX and Turbo Pascal.
  • University of Georgia - teaching undergraduate and graduate classes in Turbo Pascal.

Prolog: 3 years total experience

  • Transform Logic Corporation: Prolog programmer on reverse engineering project.
  • University of Georgia: worked on project to construct expert system to predict chemical properties.

FORTRAN: 7 years total experience

  • PhD Dissertation in Physical Organic Chemistry (Computer modeling and simulation of thermodynamic systems) implemented in IBM FORTRAN H, PDP-10, and PDP-11 FORTRAN.
  • Post-doctoral work on Amy BMD project at Auburn University to test flight system software written in FORTRAN, including work with VAX VMS FORTRAN and Harris FORTRAN.
  • Master's Degree Supervisor on project to modernize FORTRAN program implemented in CDC FORTRAN for hydroelectric dam operations.
  • Taught FORTRAN at University of Tennessee and Auburn University.

COBOL: 2 years total experience

  • Associate Computer Professional (ACP) Certification (ICCP, May 1990).
  • Reverse engineering of IBM COBOL programs at Transform Logic Corporation.

PHP: 5 months total experience

  • Used PHP and MySQL to implement this web site and newsletter.
  • Used PHP and MySQL to support interactive Computer Aided Instruction web pages.
  • Used PHP and MySQL to support web pages reporting voter registration statistics in Arizona.

XML: 6 months total experience

  • Freescale Semiconductor: Report generation and data interchange.
  • Pegasus Solutions: writing API documentation.

FORTH: 6 months total experience

  • Auburn University: I used implementation of the FORTH interpreter as a teaching tool.

Testing and Q/A: 10 years total experience

  • Research Associate on software testing project at Auburn University sponsored by Department of Defense.
  • Developed and taught graduate-level course on software testing at the University of Georgia.
  • Developed communications protocol and data logging software for embedded system testing cell phones at Motorola.
  • Developed unit, integration, and acceptance testing for projects at Freescale Semiconductor.
  • At Pegasus Solutions (2001) I developed unit and regression tests for a proprietary transaction processing system.
  • At Auto-Soft Corporation/Brooks Automation (2000), I used test capture tools to test Java programs.
  • In 1997 I completed training in "Requirements Based Testing" and am in the process of integrating the techniques into my personal process as well as seeking opportunities to engage in projects utilizing these techniques.
  • At Motorola (1996-1997) I developed a number of C and C++ test drivers to do unit testing and integration testing of code that I was developing, and designed systems integration tests for the subsystems I was responsible for, and carried out regression tests written by other members of my team. I also designed, implemented, and tested acceptance tests for new GSM cellular phones.
  • As an Independent Consultant (1996) I have done preliminary work to implement glass-box testing using GCT (General Coverage Tool) and to use Vermont Test to capture and replay test scenarios for a menu-driven DOS-based vertical market application, as well as using Lint and MemCheck to analyze code quality issues of same.
  • At International GeoGraphics (1992-1993) I developed a number of shell scripts for quality assurance and testing. These included shell scripts to extract field edit definitions from data-entry form descriptions and to compare for consistency. I also wrote scripts to create test files, invoke production programs against the test files, and to compare the results to expectations.
  • As part of an effort to develop an information database for the nonprofit organization AzPEN (1991), I wrote specifications for several C-language modules implementing abstract data types. Since the coding was intended to be done by relatively inexperienced volunteer programmers, a major part of the specifications consisted of a combination of C-language test drivers and UNIX test scripts to verify the proper operation of the modules.
  • As Assistant Professor of Computer Science at the University of Georgia (1986-1989) I taught graduate courses in Software Engineering, and in Software Defect Removal.
  • As a Research Associate at Auburn University (1983-1986) I worked on a project sponsored by the Army to develop test-case generation tools for use in the testing of Command, Control, and Communications software. The project carried out various forms of "glass box" testing and instrumented the code to measure several different test-case coverage metrics.

Hardware: 17 years total experience

  • Built first computer in 1984 - a Heathkit H-89 Z-80 CP/M machine.
  • Built first IBM PC Clone in 1987.
  • Computer consulting experience with building/upgrading IBM PCs.
  • Upgraded Sun Sparc-20 and SGI computers at Motorola.
  • Lab data acquisition programming at University of Tennessee and Auburn University.
  • Supervisory control and data acquisition (SCADA) at Knoxville Utilities Board.
  • (Hobby) experience with BoeBot Robotics and Process Control platform.

Internet: 12 years total experience

  • HTML and Javascipt, Perl, PHP.
  • UUCP networking since 1989, TCP/IP since 1991.
  • Pegasus Solutions: Documentation of APIs using XML.
  • UUCP networking since 1989, TCP/IP since 1991.
  • Various clients: web page development using HTML, DHTML, and JavaScript.
  • Various clients: Web server installation and configuration for Apache and CERN servers.
  • Various clients: sendmail configuration.
  • Internal project: Developed POP and NNTP clients in C++.
  • Internal projects: Web server programming using Perl, PHP, and MySQL.
  • Internal Web Site for Motorola Epidigm Group (intranet).
  • Automatic generation of metrology report web pages for Motorola semiconductor fab (intranet).
  • David Smith 2000 Campaign Web Site.
  • Reform Party of Arizona Web Site.
  • Computer Aided Instruction Web Site.
  • Barnes and Noble & Amazon affiliate Bookstore

Database: 4 years total experience

  • SUMCO: Complex SQL Queries to Oracle server from Visual Basic
  • Remington College: MySQL.
  • Pegasus Solutions: 5 months C/UNIX/Informix transaction processing.
  • Quadras/International GeoGraphics and CSK Auto: C-Tree.
  • Auto-Soft: Oracle 8.0 SQL Worksheet.
  • Microsoft Access.
  • Used PHP and MySQL to support interactive Computer Aided Instruction web pages.
  • Used PHP and MySQL to support web pages reporting voter registration statistics in Arizona.

Microsoft Office: 8 years total experience

  • OLE Automation of Word and Internet Explorer. Visual Basic Programming of Access. Excel.
  • Microsoft Project.

Semiconductor Manufacturing: 7 years total experience

  • PROMIS, SECS/GEM, Factory Builder, VEFI, Equipment Integration.
  • Motorola and Freescale Semiconductor: Clean room experience while characterizing and integrating tools.
  • Auto-Soft/Brooks Automation: Programming station controllers for various tools.
  • SECS and VFEI protocols, Grapheq, CELLproview, FACTORYworks, and SPC/EDC.
  • PhD in Physical Organic Chemistry provides supporting knowledge.

Operating System Platforms: 29 years total experience

UNIX/Linux: 14 years total experience

  • Freescale: Tcl and Apache programming in HP-UX environment.
  • Motorola: UNIX System Administrator (SunOS, Solaris, HP-UX, IRIX).
  • Intel: UNIX System Administrator (ESIX and NCR/AT&T SVR4).
  • Various clients: consulting.
  • Scripting/shell programming using Korn, C-Shell, Perl, and Tcl.
  • configuration management using ClearCase, SCCS, RCS, and CVS.
  • NFS, sendmail, automounter, NIS, X-Window configuration, Motif UI/MX.
  • SunOS, Solaris, HP-UX, IRIX, SVR4, SVR3, SCO, XENIX, Linux, FreeBSD, MINIX.
  • Courses taught at Remington College/Education America: Linux (Slackware and Red Hat), Perl, MySQL.

Windows NT/XP/Server: 6 years total experience

  • Freescale Semiconductor.
  • Brooks Automation/Auto-Soft: Desktop and Client/Server programming.
  • Pegasus Solutions: Desktop.
  • Various Clients: consulting.
  • Intel: Desktop.

MS-DOS/Windows 3.1: 9 years total experience

  • Supported memory management NetWare clients that were also running a TCP/IP stack for X-Window on Windows 3.1 system.
  • Desktop use.
  • Programming for DOS and Windows 3.1 applications.
  • wtst2000 program to test year-2000 compliance of hardware.

OS/2: 7 years total experience

  • Experimented with OS/2 version 1.3 and 2.0.
  • Deployed OS/2 version 2.1 to client site.
  • Used the strong integration capabilities to interact with both Novell NetWare servers and UNIX NFS servers and X11-Window system as part of my standard development environment.
  • Still use OS/2 Warp 4.0 for certain graphics programs.

VAX/VMS: 3 years total experience

  • At Auburn University one of my roles was assistant administrator of the department VAX/VMS server, including programming scripts in DCL.
  • At the University of Georgia I used and administered a micro-VAX/VMS system used for artificial intelligence programming.
  • Pascal programming.
  • FORTRAN programming and porting FORTRAN-G to VAX/VMS-FORTRAN.

PDP-11/RSX & RSTS: 3 years total experience

  • Macro-11 programming.
  • Pascal programming.
  • FORTRAN programming.
  • Basic-plus Programming.

CP/M: 2 years total experience

  • Built Heathkit H-89 from scratch.
  • Taught Pascal programming using Turbo Pascal.
  • Customized Kermit program.
  • Implemented laboratory equipment data acquisition.

Novell NetWare: 1 years total experience

  • Configured client stack for Windows 3.1 for use with TCP/IP stack running X-Window system.
  • Installed version 2.10 Server and configured DOS and Windows 3.1 clients.
  • Installed version 3.11 Server and configured DOS and Windows 3.1 clients.
  • Installed version 4.02 Server and configured OS/2, Windows 9x, Windows NT, DOS and Windows 3.1 clients.
  • 4.02 server integrated into my home office LAN.

IBM 360/370 Mainframe: 5 years total experience

  • Teaching FORTRAN, BAL, and JCL programming at Auburn University. TSO.
  • FORTRAN, BAL, and JCL programming at University of Tennessee for PhD Dissertation; RJE.

Dec-10: 2 years total experience

  • FORTRAN, programming at University of Tennessee for PhD Dissertation.

Artificial Intelligence: 4 years total experience

  • Transform Logic Corporation: Prolog programmer on reverse engineering project.
  • Visiting Scientist in the Artificial Intelligence Group at the University of Georgia (1989-1990):
    • My work on Genetic Algorithms as applied to Diagnostic Decision Making was published in the refereed journal Expert Systems with Applications.
    • I also worked on Environmental Protection Agency project to predict chemical properties using an expert system implemented in Prolog.
  • University of Georgia: Assistant Professor of Computer Science/AI Institute.

Control Systems: 7 years total experience

  • Knoxville Utility Board: SCADA system for power grid using RSX Macro-11 and Pascal.
  • Auto-Soft/Brooks Automation: station/cell controllers for semiconductor manufacturing.
  • Freescale Semiconductor: machine managers and EAPs for semiconductor manufacturing.

configuration management: 7 years total experience

  • I used CVS at Freescale.
  • I administered and also used ClearCase at Motorola.
  • I used RCS at Motorola and for my internal use.
  • I developed proprietary configuration management and release software at Intel.
  • sccs at Transform Logic Corporation.

Embedded Systems: 3 years total experience

  • Experience with embedded software test-harness for GSM cell-phone testing.
  • Hobby experience with embedded control (BoeBot).
  • I have additional experience developing the layer of control and data acquisition that is above the embedded level, in particular controlling semiconductor manufacturing equipment.

Job History

Quadras Corporation (June 2013 - December 2013)

  • Systems Engineer.
  • Tools used include: Microsoft SQL Server, PowerBuilder 11.

Grand Canyon University (January 2010 - present)

  • Adjunct Instructor primarily teaching online and evenings: Health Information Technology, Intro Chemistry, Pharmacology, Microbiology, Ethics, Transcultural Healthcare, Nutrition, Environmental Science).
  • Tools used include: Angel and LoudCloud online learning environment, Microsoft PowerPoint, Microsoft Word, Excel.

SUMCO (March 2011 - December 2011)

  • Job Shop Programmer with Matrix Resources/Consultant - Phoenix AZ.
  • Programming of workflow control and data collection for semiconductor manufacturing.
  • User interface form design as well as back-end SQL table and query design.
  • Tools used include: Visual Basic 6, ADO, Visual Source Safe, Oracle SQL, Excel, and FACTORYworks.

Quadras Corporation (Formerly International GeoGraphics) (2009)

  • 1099 Contract programmer - Phoenix AZ.
  • Programming of Internet-based data entry and workflow.
  • Tools used include: PHP on Linux platform, MySQL on Linux platform, XHTML, and JavaScript.

Freescale Semiconductor (March 2006 - June 2008)

Fulltime Employee (October 2007 - June 2008)

  • Software Engineer - salaried - Tempe & Chandler AZ.
  • I conducted full-lifecycle maintenance programming on existing DESPACH and AMAT-5x00 tool controllers, implemented using Brooks FA-Builder in Visual Basic 6, including making extensive enhancement to vbUnit regression test suites.
  • I was team lead on a full-lifecycle project that implemented the interface software necessary to integrate the factory automation control of an MRC-943 gold sputter tool with the PROMIS workflow management system.
  • Working with another team member, I made significant enhancements to the tclUnit test engine and supporting mock libraries on an HP-UX Unix platform.
  • My team migrated the entire Tempe fab "Machine Manager" software system to a new server environment on an HP-UX Unix platform, while maintaining 24x7 factory operation.
  • I implemented the full life-cycle upgrade of Tcl/Tk GUI interface software ("MSI") in support of a factory workstation technical refresh at the Tempe CS-1 fab, while maintaining 24x7 factory operation.
  • Tools used included Tcl/Tk, Expect, HP-UX, Windows Server, Brooks FA-Builder, Visual Basic 6, Visual Source Safe and CVS (configuration management), XML, XSLT, tclUnit, and vbUnit.

Contract Consultant (March 2006 - October 2007)

  • Job Shop Programmer with NetPolarity/Consultant at Freescale CS1 - Tempe AZ.
  • Tcl/Tk programmer maintaining existing MSI and Machine Manager code.
  • I developed a first of a kind MSI and Machine Manager for KLA8100.

Southwest College of Naturopathic Medicine (October 2001 - March 2006)

  • Adjunct Instructor/Anatomy Lab Manager - Tempe AZ.

Remington College / Education America (October 2001 - April 2004)

  • Adjunct Instructor - Tempe AZ.
  • Courses taught include Linux, Perl, PHP, Visual Basic 6 and .NET 2003, Visual C++, Java, HTML, JavaScript, and Database Programming (MySQL, SQL-Server, ODBC, DBI, CGI, etc.).

Pegasus Solutions (April 2001 - August 2001)

  • Job Shop Programmer with Matrix Resources/Consultant - Phoenix AZ.
  • I added new features to an on-line hotel central reservation transaction processing system, created and maintained the API documents in XML, developed and ran unit and regression tests.
  • Tools used include: C, UNIX, Informix SQL, XML.

CSK Auto (February 2000 - April 2000)

  • Job Shop Programmer with Matrix Resources/Consultant (short term project) - Phoenix AZ.
  • I found and fixed remaining Y2K bugs in production software, ahead of schedule and under budget.
  • Tools used: SCO UNIX, C/C++, and C-Tree database.

Brooks Automation (January 2000 - March 2001)

  • Senior Software Engineer - salaried - Gilbert AZ.
  • I used FACTORYworks, Visual Basic 6, and Visual Source Safe (configuration management) to implement statistical process control engineering data collection (SPC/EDC) for a semiconductor fab in Texas.
  • I continued support for Auto-Soft projects after Brooks acquired Auto-Soft (see below).
  • Tools used included FACTORYworks, Visual Basic 6, Visual Source Safe (configuration management).

Auto-Soft Corporation (May 1997 - January 2000)

  • Senior Software Engineer - salaried - Mesa & Gilbert AZ, Salt Lake City UT.
  • I worked in a clean-room environment at the Chandler MOS-12 fab to characterize the operational features of several semiconductor-manufacturing devices and then developed control software to automate operations and data collection, which resulted in greater throughput and reduced scrap. In this same fab I automated the generation of HTML to display engineering data reports collected from manufacturing tools, thereby providing process engineers with quicker access to their data.
  • I designed, coded, and unit tested generic and specific Java classes to support the user interface and business rules layers of the iMaven multi-tier manufacturing control system for a series of wet-bench processing tools, and served as team lead in the development of additional device controllers. My designs were deployed in Singapore (Wacker-Siltronics wafer fab) without any problem reports.
  • In support of the above, I evaluated several capture/replay GUI test tools for Java on Windows NT, and developed regression tests, which greatly facilitated regression and stress testing.
  • As part of a team, I implemented Year-2000 upgrades to HP-UX systems software and C/C++ compilers and code, and then helped test the system and resolve coding problems - delivering before the end-of year deadline.
  • I developed departmental configuration management system based on RCS.
  • I supported RTS automated warehousing software implemented in C/Interactive UNIX.
  • Tools used included SECS/GEM and VFEI protocols, Grapheq, CELLproview, Perl, Tcl/Tk, C/C++, Motif UI/MX, HP-UX UNIX, UML, Java, CORBA, Oracle, and "Design Patterns".

Motorola Systems and Space Technology Group (July 1994 - March 1997)

Software Engineer (January 1996 - March 1997)

  • Job Shop Programmer with Superior Design/Contract Consultant - Scottsdale AZ.
  • I designed, implemented in C/C++, tested and deployed a TCP/IP data logging communications protocol to interface between a Solaris UNIX engineering workstation and an embedded 68030 test-harness, which allowed engineers to record events occurring during execution of cellular telephone tests.
  • I designed, implemented in C, and ran acceptance tests for GSM cellular phones on a 68030 embedded test harness.
  • Tools used: C/C++, 68030 assembly language, Solaris UNIX, systems analysis and design using Cadre Teamwork (forerunner of UML), and documentation using FrameMaker.

UNIX/Network Administrator (July 1994 - January 1996)

  • Job Shop Programmer with Superior Design/Contract Consultant - Chandler & Scottsdale AZ.
  • I supported SunOS, Solaris, HP/UX, and SGI IRIX versions of UNIX, Windows 3.1/Netware/X-Window workstations, and PowerMac workstations.
  • I expanded an engineering subnet from a single SunOS Sparc-10, to include four SunOS and two HP-UX servers.
  • Joined by additional team members, I further expanded the subnet to include 10 Solaris servers, 21 Silicon Graphics "Indy" workstations, and 60 PowerMac desktop units, serving a total of over 80 users.
  • I represented my department in a security policy task force, and implemented network and system security audits, which resulted in identifying a security incident.
  • I increased UNIX system responsiveness while running cross-compilers and circuit emulators by using performance monitoring and kernel tuning.
  • My responsibilities included setup, configuration, and support of sendmail, automounter, Network Time Protocol (xntp), and Network Information Servers ("NIS yellow pages"), CERN World Wide Web server, X-Window clients and servers, Atria ClearCase (configuration management), Cadre Teamwork. and Novell NetWare clients.
  • I upgraded SPARC and SGI hardware, including internal disks, memory, and expansion cards, and did SCSI disk setup and cloning.

Intel (April 1993 - June 1994)

  • Job Shop Programmer/Consultant with CDI Corporation- Chandler AZ.
  • I developed and documented packaging, configuration management, installation, and audit techniques to support reproducible deployment of standard configurations in Intel facilities worldwide (part of Intel's Virtual Factory "Copy Exactly" project).
  • UNIX SVR4 (NCR/ATT) and Esix systems administration in a TCP/IP, NFS, X11, and Motif environment, using NCR and AT&T symmetrical multiprocessor and RAID UNIX platforms.
  • Techniques used included: Borne/Korn shell scripting and SCSI Disk cloning.
  • I installed, configured, and used Windows NT 3.1.
  • I participated in configuration management tool selection.

Quadras Corporation / International GeoGraphics (February 1992 - March 1993)

  • Job Shop Programmer/Contract Consultant - Phoenix AZ.
  • I coded a data entry, database, and management information system for the title insurance industry that included field validation look-ups from a database.
  • In order to test the above, I wrote c-shell scripts to create test files, invoke production programs against the test files, and to compare the results to expectations. Other tests included shell scripts to extract field edit definitions from data-entry form descriptions and to compare for consistency. I found and corrected a number of inconsistencies in field edits.
  • This system survived Y2K without any substantial changes.
  • In support of the above I performed a variety of Interactive SVR3 UNIX system administration tasks, including performance monitoring and kernel tuning, installation of Ethernet hardware and software, NFS network setup, configuration of serial-ports, SCSI hard-disk device drivers and UNIX kernel rebuilds.
  • I also constructed a GUI-interface demonstration prototype using MS Access.
  • Techniques used include: C and csh-shell programming, and Interactive SVR3 UNIX.

Transform Logic Corporation (August 1989 - October 1990)

  • Technical Specialist - salaried - Scottsdale AZ.
  • Analysis, design, coding, and testing for an artificial intelligence/expert system project to reverse-engineer COBOL into a proprietary functional language based on C and Prolog, running on SunOS UNIX.
  • Techniques included Prolog programming, relational database design and normalization, compiler flow analysis techniques, term rewriting, symbolic algebra, symbolic logic, program graph analysis, program restructuring, symbolic execution, and symbolic logic.
  • SCCS configuration management.

University of Georgia (August 1986 - August 1990)

Visiting Scientist (August 1989 - August 1990)

  • As Visiting Scientist in the Artificial Intelligence Group at the University of Georgia, my work on Genetic Algorithms as applied to Diagnostic Decision Making was published in the refereed journal Expert Systems with Applications.

Assistant Professor (August 1986 - August 1989)

  • Assistant Professor of Computer Science and member of the Artificial Intelligence Faculty - salaried - Athens GA.
  • I was a contributor to the successful NSF grant proposal to obtain an Intel Hypercube for development of high-performance algorithms.
  • I extended my previous research in solving path predicates for black-box testing that I began at Auburn University to include the testing of Ada programs.
  • In conjunction with other faculty colleagues, I supervised student projects to develop SIMODULA, a discrete event simulation processor integrated with a SQL database. This work lead to the "Best Paper Award" when presented at the 23rd Annual Simulation Symposium, and has been further described as a chapter in the book series Progress in Simulation.
  • I also worked on an Environmental Protection Agency project to predict chemical properties using an expert system implemented in Prolog.
  • I developed and taught graduate level courses in Discrete Structures and Data Structures, Ada, Software Defect Removal, and Hypertext.
  • I taught graduate level courses in Software Engineering, Operating Systems, Computer Networks, and Pascal for non-majors.
  • I taught undergraduate courses in CS-2 and Computer Applications Software.

Auburn University (February 1983 - August 1986)

  • Research Associate/Instructor - salaried - Auburn AL.
  • As a Research Associate on an Army BMD (Ballistic Missile Defense) research contract, I worked on a project to develop test-case generation tools for use in the testing of Command, Control, and Communications software:
    • I was the lead software architect of the path predicate subsystem, which automatically constructed test cases for black-box testing of FORTRAN programs, by constructing and solving implicit path predicates.
    • In this capacity I specified and designed the software, and supervised several undergraduate student programmers in implementing the design.
    • For this project, I applied Nonlinear and Mixed Integer Numerical Optimization and Interval Analysis techniques.
    • Implementation was in VAX/VMS Pascal.
  • As classroom Instructor in Computer Science and Engineering:
    • I served on the committee to design and then taught a 2-quarter sequence in FORTRAN.
    • I taught a 2-quarter sequence in Pascal.
    • I taught IBM 370 Basic Assembly Language (BAL).
    • I taught Basic-plus programming on PDP-11/RSTS.

Knoxville Utility Board (January 1980 - February 1983)

  • Co-op programmer - Knoxville TN.
  • I designed, developed, and deployed into production a data logging subsystem for the SCADA (Supervisory Control and Data Acquisition) system controlling the regional power distribution grid.
  • Implementation languages PDP-11 Macro-11, Pascal, FORTRAN.

University of Tennessee (September 1980 - December 1982)

  • Instructor of Computer Science and Evening School Instructor.
  • I taught introduction to FORTRAN programming and advanced FORTRAN programming.

Independent Consultant (February 1983 - present)

The identity of independent consulting clients is proprietary information, so only general descriptions are provided below.
  • Barnes and Noble/Amazon Affiliate Web Site:
    • Used Perl to pre-format web pages and generate index and cross-reference between pages, and to implement CGI-based search engine.
  • Software Development Company:
    • SCO UNIX file server and backup tape data recovery and database conversion.
  • Office Supply Company:
    • Altos XENIX database recovery of TracLine accounting and inventory control system, system administration, data maintenance, site relocation, hardware servicing.
    • Construction of shell scripts to facilitate routine operations.
  • Waste Management Company:
    • SCO UNIX installation and setup for statewide network of time clocks and terminals.
  • Geographical Information Systems Company for the Real Estate Industry:
    • Interactive UNIX System V R3.2 and C and csh language programming.
    • Implemented user interface and database backend.
    • Y2K testing and hardening.
  • Hospitality Industry:
    • Design and implementation in Visual Basic Professional for DOS of a scheduling system for a local hotel.
  • Software Engineering Tool Company:
    • C/Windows program maintenance of a systems analysis and design tool (Excelerator for Windows with Real Time Extensions).
  • Moving and Storage Company:
    • Installation and support of OS/2 system and software for an Allied Van Lines agency.
  • Engineering Firm Specializing in Energy Conservation:
    • Enhancement of a Paradox 3.5 database.
  • Book Publisher Specializing in Aviation:
    • Setup of UNIX System V R4 and software installation for a Tucson publisher specializing in aviation.
  • University Engineering Department:
    • Developed supervisory control and data acquisition software for interfacing with temperature-ramp mass spectrometer.
  • Department of Defense:
    • Developed and presented two 1-week courses on IBM Systems Network Architecture (SNA) and Advanced Communications Function/Network Control Program (ACF/NCP) for the Defense Logistics Services Command (DLSC).
    • Presented a 4-day course on DB2 Performance for the Defense Logistics Services Command (DLSC).
  • Textbook Reviewer:
    • Textbook reviewer for various publishers, including: Harcourt-Brace-Jovanovich, Allyn & Bacon, Ablex Publishing Company, West Educational Publishing, and William C. Brown.
  • Forensics Consultant:
    • Data recovery from UNIX system disks.
  • As part of an effort to develop an information database for the nonprofit organization AzPEN, wrote specifications for several C-language modules implementing abstract data types. Since the coding was intended to be done by relatively inexperienced volunteer programmers, a major part of the specifications consisted of a combination of C-language test drivers and UNIX test scripts to verify the proper operation of modules.

Education

Continuing Education

  • Audited various computer classes at Maricopa Community College as a 'perk' associated with teaching, including Windows Server 2003, Windows XP, and Informix/SQL.
  • Completed training in "Requirements Based Testing" (1997).

University of Georgia (Assistant Professor of Computer Science 1986 - 1989)

  • I was Assistant Professor of Computer Science at the University of Georgia for 3 years and taught both undergraduate and graduate level courses.
  • This was when advanced degrees in computer science were rare.

Auburn University (Postdoctoral studies in Computer Science and Engineering 1983 - 1986)

  • After earning a PhD in Chemistry from The University of Tennessee, I pursued additional graduate-level studies in Computer Science at Auburn University from 1983-1986.
  • I earned sufficient graduate credits to obtain a second PhD in Computer Science and Engineering, but left without completing a dissertation when funding ran out and I was offered a position as Assistant Professor of Computer Science at the University of Georgia.
  • The following publications are related to the work which I did at Auburn:
    • An Environment for Testing Ada Programs Implemented in Ada.
    • Glass Box Testing Without Explicit Path Predicate Formation.
    • The Use of Simulation and Prototypes in Software Testing.
    • Validation of Chemical Data Analysis via Simulation -- II. An Examination of a Curve Fitting Algorithm.
    • QUEST: Query Utility Environment for Software Testing.
    • Advanced Simulation Support.
    • Availability/Dormancy Analysis: Query Utility Environment for Software Testing (QUEST).

University of Tennessee (PhD Physical Organic Chemistry 1982)

  • PhD in Physical Organic Chemistry from The University of Tennessee at Knoxville (December 1982).
  • My dissertation is entitled "Computer Applications to the Study of the Thermodynamics of Coal Liquid Interactions and to the Study of the Protonation of Weak Organic Bases" and was directed by John W. Larsen.
  • In addition to majoring in Physical Organic Chemistry, I completed additional graduate level coursework in Computer Science and undergraduate-level coursework in Electrical Engineering.
  • The following publications are related to the work which I did at The University of Tennessee:
    • Thermodynamics of Hydrogen Bonding in Coal Liquids. Failure of the Bolles-Drago Method When Applied to Mixtures.
    • Validation of Chemical Data Analysis via Simulation -- II. An Examination of a Curve Fitting Algorithm.

Duke University (Masters Organic Chemistry 1976)

  • I graduated with a Master's degree (A.M.) in Chemistry from Duke University in May 1976.
  • My thesis is entitled "Oxymercuration and Other Reactions in the Dicyclopentadiene System" and was directed by Pelham Wilder.
  • Coursework included design of chemical instrumentation.

Union College of Kentucky (Baccalaureate Chemistry, Math, Physics 1973)

  • I graduated Magna Cum Laude from Union College of Kentucky in August 1973 with a triple major B.A. in Chemistry, Mathematics, and Physics.

Centerville High School (1970)

  • I graduated from Centerville High School, Ohio in May 1970.

Professional Certifications

The Institute for the Certification of Computer Professionals (ICCP) offers several certification programs, consisting of a combination of core and specialty fields. I have earned the following certifications:
  • Associate Computer Professional, C Language (ACP) Certification [lifetime].
  • Associate Computer Professional, COBOL (ACP) Certification [lifetime].
  • Associate Computer Professional, Ada Language (ACP) Certification [lifetime].
  • Certified Computer Programmer (CCP) [expired in 1995].
  • Certified Systems Professional (CSP) [expired in 1995].
  • Certified Data Processor (CDP) [expired in 1995].
by passing specialty exams in the following areas:
  • Communications.
  • Procedural Programming.
  • Software Engineering.
  • Systems Design.
  • Management.
I have also earned a lifetime certification for teaching in the Maricopa County Community College District of Arizona in Chemistry (A.1.a) and Computer Information Systems (A.1.b).

Professional Activities

  • Although presently membership has lapsed due to economic considerations, I was formerly a member of the following professional organizations:
    • Independent Computer Consultants Association (ICCA).
    • Scottsdale Chamber of Commerce.
    • IEEE Systems, Man, and Cybernetics Society.
    • IEEE Information Society.
    • IEEE Computer Society.
    • Association for Computing Machinery (ACM).
    • Society for Computer Simulation (SCS).
    • Society for Industrial and Applied Mathematics (SIAM).
    • American Chemical Society (ACS).
  • Attended Western Regional Leadership Conference of the Independent Computer Consultants Association, San Francisco, 1993.
  • Attended OS/2 Technical Interchange Conference, Phoenix, AZ, 1993.
  • Attended Novell Certified NetWare Administrator (CNA) course, 1993.
  • Attended Technology '90 "Technical Conference" and "Total Quality Workshop," Mesa AZ, December 5 & 6, 1990.
  • Attended 1990 Eastern Multiconference of the Society for Computer Simulation, Nashville, TN (April 23-26, 1990).
  • Attended the Eighth Annual National Conference on Ada Technology, Atlanta, GA (March 5-8, 1990).
  • Attended Transform Users' Group meeting, Scottsdale, AZ, 1990.
  • Attended Colloquium on College Teaching, Athens, GA (September 14-15, 1989).
  • Attended 1988 Eastern Simulation Conference, Orlando, FL (April 18-20, 1988).
  • Attended 26th Annual Conference, Southeast Region, Association for Computing Machinery, Mobile, AL (April 21-22, 1988).
  • Attended Research Institute for Computing and Information Systems (RICIS) Symposium, University of Houston-Clear Lake (October 14-15, 1987).
  • Attended 1987 Eastern Simulation Conference, Orlando, FL (April 6-9, 1987).
  • Attended L. B. Rogers Symposium in Analytical Chemistry, Athens, GA (December 9, 1986).
  • Attended Southeastern Simulation Council Annual Meeting, Fort Walton Beach, FL. (October 20, 21, 1986).
  • Attended 1986 International Test and Evaluation Association Symposium, Huntsville, AL (September 30-October 2, 1986).
  • Attended SIAM Conference on Applied Linear Algebra in Raleigh, NC (April 26-29, 1982).
  • Attended SIAM Fall 1981 meeting in Cincinnati (October 26-28, 1981).
  • Participant in SIAM Second Summer Research Conference on Numerical and Statistical Analysis (June 14-26, 1981).
  • Attended Computers in Chemistry Conference in Tallahassee, FL. (March, 1981).

Service Activities

  • 2008 Judge, FIRST Robotics Competition.
  • 2001-2007 Red Cross volunteer Chapter Duty Officer.
  • 2001-2007 Red Cross disaster communications volunteer/Ham license KD7HJV.
  • 1994-1995 Chairperson of the Professional Development and Continuing Education Committee of the Phoenix Chapter of the Independent Computer Consultants Association.
  • 1993 President of the Phoenix Chapter of the Independent Computer Consultants Association.
  • 1992 Vice President of the Phoenix Chapter of the Independent Computer Consultants Association.
  • 1991 Member of MIS Committee of Arizona Professional Employment Network (AzPEN) on project to develop membership database in Paradox.
  • 1988 Panelist representing University of Georgia, "Education and the Job Market", Atlanta Prime User Group, April 7.
  • 1987-1989 Member of the Artificial Intelligence Faculty of the University of Georgia.
  • 1988-1989 Provisional member of the Graduate Faculty of the University of Georgia.
  • 1988-1989 Provisional member of the Graduate Faculty of the University of Georgia.
  • 1988-1989 Member of the Graduate Faculty in Quantitative Sciences (GFACS), Statistics subfaculty, University of Georgia.
  • 1988 Computer Science representative, Minority Visitation Day, January 30.
  • 1988-1989 Faculty advisor of the local ACM chapter.
  • 1987-1988 Co-faculty advisor of the local ACM chapter.
  • 1987-1988 Chairman of Computer Science Curriculum Committee at The University of Georgia.
  • 1987-1988 Member of the Masters Degree in Computer Science Committee at The University of Georgia.
  • 1986-1987 Member of committee to design new "Science Sequence" in Computer Science at The University of Georgia.
  • 1983 Member of committee to design FORTRAN curriculum for Computer Science and Engineering program at Auburn University.
  • 1978 Sound engineer for the student stage productions ("World on Parade" and "A Tribute to Stevie Wonder") at the University of Tennessee.

Publications

Journal Publications

  • A Comparison of Methods for Diagnostic Decision Making by Walter D. Potter, John A. Miller, and Orville R. Weyrich, Jr. Expert Systems with Applications: An International Journal vol. 1, No. 4, pp 425-436 (1990) [Special issue on the Integration and Competition of Artificial Intelligence with Quantitative Methods for Decision Support].
  • Thermodynamics of Hydrogen Bonding in Coal Liquids. Failure of the Bolles-Drago Method When Applied to Mixtures by Orville R. Weyrich, Jr. and John W. Larsen. FUEL, 62(8), pages 976-977 (1983).

Book Chapters

  • The SIMODULA/OBJECTR Query Driven Simulation Support Environment by John A. Miller, Orville R. Weyrich, Jr., Walter D. Potter, and Vance Kessler. In Progress in Simulation (Leonard-Zobrist Eds.) (1990).

Conference Proceedings

  • Model Instantiation for Query Driven Simulation in Active KDL by John A. Miller, Walter D. Potter, Krys J. Kochut, and Orville R. Weyrich, Jr. In Proceedings of the 23rd Annual Simulation Symposium, Nashville, TN, April 23-26, 1990, pages 15-31. [This paper was given the "Best Paper Award" by the Society for Computer Simulation.]
  • A Simulation Study of Heuristic Techniques for Diagnostic Decision Making by Orville R. Weyrich, Jr., Walter D. Potter, and John A. Miller. In AI and Simulation: Theory and Applications, Proceedings of the 1990 Eastern Multiconference of the Society for Computer Simulation, Nashville, TN, April 23-26, 1990, pages 212-223.
  • An Environment for Testing Ada Programs Implemented in Ada by Orville R. Weyrich, Jr. In Proceedings of the Eighth Annual National Conference on Ada Technology, Atlanta, GA, March 5-8, 1990, pages 262-268.
  • Query Driven Simulation Using SIMODULA by John A. Miller and Orville R. Weyrich, Jr. Record of Proceedings of the 22nd Annual Simulation Symposium of the 1989 Eastern Multiconference of The Society for Computer Simulation, March 28-31, 1989, Tampa, FL, pages 167-181.
  • Glass Box Testing Without Explicit Path Predicate Formation by Orville R. Weyrich, Jr., Sandra L. Cepeda, and David B. Brown. 26th Annual Conference, Southeast Region, Association for Computing Machinery, April 21-22, 1988, Mobile, AL, pages 596-601.
  • The Use of Simulation and Prototypes in Software Testing by Orville R. Weyrich, Jr., David B. Brown, and John A. Miller. Society for Computer Simulation, 1987. Proceedings of the 1988 Eastern Simulation Conferences, Tools for the Simulation Profession, Robert Hawkins and Roy Crosbie, Editors, Orlando, FL, April 18-21, 1988, pages 5-10.
  • A Software Engineering Oriented Comparison of Simulator Languages by John A. Miller, Orville R. Weyrich, Jr., and David Suen. Society for Computer Simulation, 1987. Proceedings of the 1988 Eastern Simulation Conference, Tools for the Simulation Profession, Robert Hawkins and Roy Crosbie, Editors, Orlando, FL, April 18-21, 1988, pages 97-104.
  • Validation of Chemical Data Analysis via Simulation -- II. An Examination of a Curve Fitting Algorithm by Orville R. Weyrich, Jr. Society for Computer Simulation, 1987, Proceedings of the 1987 Eastern Simulation Conferences, Tools for the Simulation Profession, Robert Hawkins and Keith Klukis, Editors. April 6-9, Orlando, FL, pages 68-73.
  • QUEST: Query Utility Environment for Software Testing by David B. Brown, Kevin D. Haga, and Orville R. Weyrich, Jr. Proceedings, 1986 International Test and Evaluation Association Symposium, Challenges of Testing Space Systems, September 30 - October 2, Huntsville, AL, pages 38-43.

Reports

  • Advanced Simulation Support by David B. Brown, William Deason, Kevin D. Haga, Orville R. Weyrich, Jr., and Michael Woods. Final Report U.S. Army Contract Number DAAH01-84-D-A030-0006, June 17, 1987. Department of Computer Science and Engineering, Auburn University.
  • Availability/Dormancy Analysis: Query Utility Environment for Software Testing (QUEST) by David B. Brown, Sandra Cepeda, Kevin D. Haga, and Orville R. Weyrich, Jr. Final Report U.S. Army Contract Number DASG 60-83-0051, June 17, 1986. Department of Computer Science and Engineering, Auburn University.

Hobbies

  • Model Rocketry (NAR 10272).
  • Ham Radio (KD7HJV).
  • Electronics.
  • Music - guitar, piano, recorder.