Detailed List of Experience
I have very deep experience as a professional in the computer industry in all phases
of software engineering including planning, design, development, documentation, maintenance
and project management. My career started in mainframe computing in the 1960's and
has continuously evolved into the modern era of distributed computing (on both Windows
and Macintosh). Here is my experience starting with the latest:
Future Tense, Ltd (1990 - present)
Upon taking advantage of a very generous early retirement opportunity from US West
in 1990 (see next), I formed the corporation Future Tense, Ltd. to continue pursuing
my career in computer technology. Under Future Tense, Ltd. I have both studied and
put into practice many of the major technology innovations of the last 20 years.
During this period, I also entered into a partnership to form a company called Future
Strategies to pursue corporate strategic consulting.
Web Hosting Company (2005 - present)
Formed the web hosting company www.genealogyhosting.com to provide web hosting services
(domain names, hosting plans, etc.). My primary target market is genealogists interested
in creating a genealogy website. I wrote a book describing all aspects of genealogy
websites Getting Started on Your Genealogy Website (Lulu Publishing, 2008). Also
I wrote several Internet articles on how to design, develop, implement and maintain
a genealogy (or any) website.
Computer Consultant (2000 - 2005)
Earned my A+ certification and created a successful computer consulting service.
This work involved installing hardware, applications, software, and operating systems
on Windows machines. Troubleshooting and error correction especially of network issues
was also a big part of this work.
Political Consultant - Computer Support (1995 - 2009)
Served as the computer support person for several candidates running in a variety
of races including Washington State Senate, and Mercer Island City Council (2 candidates).
I also served as the computer support person for a grass-roots political organization
focused on local issues of importance to the citizens. This work as a political
computer support person involved creating and maintaining web sites, creating and
maintaining mail address lists, and creating the handouts, brochures and mail content.
I created a sophisticated address list system in Visual Basic for Applications (VBA)
under Microsoft Excel providing highly targeted, non-duplicated mailings.
Enterprise Modeling and Reengineering (1992 - 1999)
Was a General Partner in the consulting firm Future Strategies focusing on enterprise
reengineering. With my partner, we developed an object-oriented enterprise modeling
methodology for enterprise reengineering called Future Strategies Business Planning
(FSBP). Our FSBP methodology is a comprehensive seven-stage process which addresses
enterprise-wide process design and re-invention resulting in an object-oriented enterprise
model. We wrote a book describing our methodology Getting Results with the Object-Oriented
Enterprise Model (Cambridge University Press, 1996).
- One of our significant projects using our FSBP methodology was the construction of
a complete enterprise model for a start-up alternative network provider, a proposed
subsidiary of Time Engineering of Malaysia. Working in the corporate headquarters
in Kuala Lumpur, we developed a complete enterprise model of the proposed new venture.
The object-oriented enterprise model we developed included comprehensive business
process decomposition, an enterprise data model, and a high-level definition of the
telephony business class library.
- Another significant project using our FSBP methodology was the development of a business
integration plan for US West Communications. Working at corporate headquarters in
Denver under the authority of the US West Executive Committee, we conducted an analysis
and critique of the then current business integration plans of US West Communications
and identified gaps, overlaps, and inconsistencies among the planning directives. We
mapped US West's business integration planning process to our methodology and "reengineered"
the reengineering process at US West.
Rapid Application Development (RAD) Methodology and Training (1990 - 1992)
Developed a comprehensive methodology for Rapid Applications Development (RAD) that
defines a step-by-step process for developing systems in a very short time. This
work was years ahead of its time and the modern term for the “RAD approach” (a 1990s
term) to rapid systems development is “agil development.” My RAD methodology not
only advocated sophisticated technology tools but also a radical shift in corporate
culture. In my experience in systems development, rapid application development
is best achieved by focusing on team sociology, team responsibility, organizational
change, and a drastically different work environment. I developed an intense two-day
RAD training course for project teams and conducted my class many times during this
period..
Software Engineering Projects (1990 to present)
Since 1990, I have developed many computer applications.for desktop computers. Here
are four significant ones which are complete applications (i.e., with not only software
but also documentation, and support):
- LANIntegrator (in-work) is a Windows service that provides quick transfer of information
from one computer to another computer on a LAN (i.e., running the LANIntegrator service).
LANIntegrator is written in C# under the .NET framework using the Windows Communication
Foundation (WCF) functionality. LANIntegrator is designed as an expandable platform
with many different possible subfunctions (use-scenarios) to integrate the computers
on a LAN, For example, one subfunction allows a user to instantly transfer the current
URL of the web browser to the web browser running on a target computer on the LAN
to open that URL on that computer’s web browser, etc.
- DiskStressTest is a tool to stress-test a disk drive. DiskstressTest is written
in C# under the .NET framework and provides the continuous reading and writing to
a target disk drive to verify it is functioning perfectly. The user can select the
length of the test (perhaps hours), the number of bytes, the number of iterations,
etc. Taking advantage of .NET threading, the progress of the test is displayed and
the thread can be interrupted anytime.
- IndexBlaster is a tool used by writers to create an index of a literary work such
as a non-fiction book especially a technical book. IndexBlaster is written in Smalltalk
(the grand-daddy of all object-oriented languages) for the Macintosh (the preferred
platform of publishers). It consists of 24 object classes with 754 methods and over
8000 lines of Smalltalk code.
- FileValet is a disk management utility for the Macintosh that presents a complete
list of files on the selected disk volumes. The file list may be augmented anytime
with additional volumes. Selecting one or more files on the list permits file maintenance
activity such as deletion, changing attributes, or checking for duplicates which
can then be easily deleted. FileValet is written in C++ using Think C for Macintosh..
Go to Top
US West (1969 - 1990)
I spent twenty-one fantastic years in the IT department of U S West (which became
Quest Communications then CenturyLink) where I became the senior technology architect
of the company. There I gained broad expertise in computer technology from both
a systems engineering standpoint and a business standpoint. I served as systems
architect on a variety of high-profile projects in which computer technology empowered
strategic business direction. While this experience is ancient, many skills I learned
during this era do not deteriorate with time such as project management, team (human)
dynamics, client (customer) relations, the nature of project evolution, and the discipline
of systems management.
Bellingham Re-engineering Project (1988 - 1990)
I was a Systems architect of this corporate-sponsored U S WEST reengineering project
to explore and test alternative local exchange telephony. This strategic pilot project
brought together key enterprise architects from the core departments of the company
in a skunk-works environment with the central office in Bellingham Washington as
our laboratory. We proposed and tested the complete reengineering and rediscovery
of the local exchange telephone business. During this project, I designed and established
a Rapid Applications Development (RAD) environment that accomplished 24 months of
application development work (standard approach) in 4 months (with my RAD approach).
PC Programmer (1984 - 1988)
I was active as a senior technology leader in the corporate response to the breakup
of the Bell System and the formation of US West (now CenturyLink). I participated
in several corporate-level teams to integrate the computer departments of the three
Bell companies (Pacific Northwest Bell, Mountain Bell, Northwestern Bell) that were
consolidated to form US West. During this era, many new major applications were
required in a short amount of time to support and integrate the new company. This
led to the formation of an expert team to design, develop and install a programmer
workbench to support the design and implementation of all the new programming projects.
Our efforts were prioritized as a corporate imperative and was staffed by a small
but very powerful team of technology experts, designers, and software engineers.
We developed a LAN/PC based system with a central repository implemented in dBaseIII.
Our programmer’s workbench was deployed to several development projects of US West
to greatly speed up their completion. In addition to the dBaseIII code, I wrote
many modules in C (to optimize flow) and 8086 assembler language (for screen save,
field input / edit, and the menu system).
Mainframe Systems Programmer (1969 - 1984)
During this era, I installed and maintained mainframe operating systems and production
environments for two huge computer centers (Seattle, Portland). These computer centers
were like factories that operated 24 hours a day producing thousands of telephone
bills each day. This work involved system generation, installing, and modifying the
IBM/360 MVS/JES3 operating system; trouble shooting, correcting, and tracking problems;
and planning, scheduling and controlling system modifications. During this period,
I also designed and wrote several complex system utilities in IBM/360 assembler language
(including a change management system, a disaster backup system and an operator job
control utility). In later years, I was assigned team leadership positions which
involved planning and managing several large-scale hardware and software installation
projects involving installation of mainframe computers in the two computer centers.
Down-time of these huge computer systems was catastrophic and disciplined system
management was critical. I developed many management control procedures and tools
for computer operations management. During this epoch, my personal management and
planning skills matured with the unprecidented challenge of the 1984 Bell System
breakup (from a regulated monopoly) which drastically affected the requirements placed
on our computer centers.
Go to Top
Boeing (1964 - 1969)
This was the era of the “Industrial / Military Complex” and the era of the second-generation
computer (first use of transistors). Boeing was at the forefront of harnessing data
processing to control the vast manufacturing process that produced the jet age (beginning
with the 707). Each airplane consisted of hundreds of thousands of parts which had
to be manufactured or purchased. A series of very sophisticated computer applications
(i.e., surprisingly sophisticated for the time) controlled this process. I was an
“Application Programmer” and we programmed in assembler language and made changes
by patching programs in machine language between reassemblies. In the mid-sixties,
the old second generation mainframes (IBM 7080s, IBM 1401s) gave way to the third
generation by the introduction of the IBM/360 (1964). At that point one of the
greatest productivity innovations in computer history came about: COBOL. I was a
COBOL programmer with dozens of others on one of the first large scale online systems
in history (Integrated Purchase Order System, 1968). This system had a central database
(although primitive) and was implemented on IBM/360s using disks and terminals connected
by teleprocessing facilities (all were firsts for the computer industry).
Go to Top
Oregon State University (1963 - 1964)
As a math major (1960 - 1964), I studied digital computers including courses in programming
and operations at Oregon State University during the years 1963 - 1964. At the time,
OSU had an ALWAC IIIe Digital computer. The ALWAC IIIe was a vacuum-based first-generation
computer comparable in power to the IBM/650. All input was punched into paper tape.
I wrote several programs in a primitive assembler language to solve the assigned
math problems. However, the final project was to write a program in machine language
(i.e., the actual hexadecimal code that is executed directly by the CPU) to find
the greatest common divisor of two numbers entered at the console. Coding this problem
in machine language and effectively reassembling the hexadecimal code on each iteration
then retyping it to a paper tape proved to be a very humbling experience.
Go to Top