Mr. Thompson has 20 years of experience in the engineering and information systems industry. This includes consulting, web development, sales, management, and technical development experience. Industry experience spans aviation, radar, telecommunication, warehousing, telemarketing, financial, engineering, computer manufacturing, and state government. He has both hardware and software design expertise.
Java JDK 1.0 - 1.4, C++, C, Objective C, Windows Microsoft Visual C++, Lotus Notes R5, X Windows, Networking, UNIX, Linux, Windows NT & Win32(95,98,2000), IBM AS/400, Client/Server, Avionics Applications, Object Oriented Development, Warehouse Logistics, Bar Code Applications, SNA Server, Avionics Applications, Collision Warning, Data Acquisition and Analysis and Embedded & Realtime Microprocessor Systems.
Java, PHP, Apache, Jserv, Jakarta Tomcat, XML, PostgreSQL, MySQL, IIS, ASP.NET, HTML
Java, C, C++ w/STL, MSVC++, Objective C, Perl, CGI, HTML, PHP, ASP.NET, Visual Basic, RPG/400 III & IV, OS/400 CL, ksh, nmake, Tk/Tcl, awk, LotusScript, and Assembler: PPC MCP 8240, 80960, 68000, 68HC11, X86, 8031, 8080, 8741, Z80, 6502
Linux, UNIX (many variants since version 7), Precise MQX, Mac OS X, Darwin, Microsoft Windows: NT, Win32, OS/2, MS-DOS, OS/400, Sytstem V, Solaris, SunOS, AIX, UTS (Amdahl), FTX (Stratus), VMS, CP/M
PostgreSQL, IBM DB/400, MySQL, Oracle, SQL, Paradox, FoxPro, DBaseII/III
Ethernet with TCP/IP, NFS, Microsoft Netbui, Token Ring, Novell Netware, X.25, BSD and System V UNIX IPC programming, TLI, RPC, Streams, Sockets
SDS Single Step, Sdb, dbx, gdb, Codeview, Turbo, Periscope, and Xray debuggers, PVCS, Buster test scripting tool, Sable, BaseWorX.
PC's, PCI Bus, Embedded uP: PPC MCP8240, I960, I80186, VHDL, HP digital analyzers, FPGA's, CPLD's and Flash EEPROM's.
Contractor
Web Site Development Start With No &
Coach2100.com
Jim Camp teaches a decision-based negotiation system that in many ways is contrary to the accepted Win-Win or PICOS type of negotiation. In the last couple of months, his book "Start With No" has been featured in Harvard Business Review and Fortune Magazine.
As part of his system, clients can use his web site for self paced instruction and collaboration on negotiations.
The client website is built using a combinations of Java Servlets, JServ, Apache, Jakarta Tomcat, XML, and Postgres.
I was one of three developers working on the websites and participated in all levels of the design.
The client site (coach2100.com), runs on a pair of redundent IBM Servers running Redhat Linux with Apache, SSL, Java, Javascript and Postgres supporting the application. The client site is not available to the public, but can be demoed with permission.
I also handle all the administration, security and networking for all four machines. The front end consists of high speed links from two separate providers. Policy based routing (route2) is used on the Linux servers so that either provider can fail without affecting access to the servers.
The public site, startwithno.com, runs on Windows 2000, and is built using HTML, Apache, PHP and MySQL.
My partners and I also have maintained our own websites for a number of years: www.custommicronics.com and doc.custommicronics.com. The later is a private site for customer communications, bug tracking, etc.
Reference: Jim Camp (email jcamp@coach2100.com)
Contractor
Development of Airport Lighting Control System
Due to our experience with the development of an Airport Lighting Control System for ADB in Oslo, Norway, ADB/Siemens invited us to bid on another system, this time in Brussels, Beligium.
This system used embedded controllers to control the high voltage constant current regulators used for airfield lighting and serial power line (Brite) modems to control individuals lights on the airfield.
This system was based on different hardware than the Oslo system. The controllers were rack mounted embedded computers with 8 meg of RAM and 32 meg of compact flash.
Dan Sabo (partner) and I created a port of Linux that would run on these embedded computers (Siemens Circuit Controllers, SCC). There were a number of challenges for this port of Linux due to the unique hardware on the embedded computers. Drivers were written for the dual Ethernet controllers, RS-422 and RS-485 serial interfaces, and the watchdog controller.
When Dan and I started the project, we looked a number of small Linux distributions. What we realized is that most of the small Linux distributions make tradeoffs specific the the application that they are targeted for and none we found fit a number of our requirements. Consequently, we ended up creating our own distribution based on Debian Sid, Busybox, uClib. We also had unique requirements on the boot process which forced us into writing our own boot loader. This Linux distribution booted from a 32Meg DiskOnChip (flash) and ran in 8 Meg of memory. The DiskOnChip had to function both as our boot ROM and Filesystem.
My parterners and I wrote the application code using "C" and TCP/IP sockets under Linux as our interprocess communications.
Our system went live at the Brussels Airport in late October 2002, on 160+ SCCs and controls the runway and taxiway lighting for the airport.
Reference: Andre Jelu (+32 2 722 17.87, email jelua@adb.be)
Contractor
Development of SkyWatch HP
Due to our experience with the development of BF Goodrich's original Collision Warning System (TCAS791), BF Goodrich asked us to come back to help in the development of their latest Collision Warning System, SkyWatch High Power (HP). Involved in a wide variety of tasks from working on the original specifications, development of the prototypes, software tracking algorithms, porting the real time OS, flight testing and data analysis. Helped with the integration of the SkyWatch HP into Ratheon T6A and a prototype Cessna CJ-1. Had primary responsibility for the reply processing code. Development was primarily done using Diab C (a GNU C derivative), Precise MQX Real Time OS, and SDS Singlestep Debugger. Data analysis was done in Visual C++ and Perl.
Enhancement of Passive Navy Collision Warning System (NACWS) to Handle Target Tracking from Digital Mode S Radars.
Implemented code changes to allow the NACWS 991 to interpret intruder reply data received from Mode S Radars. This allows the NACWS system to passively track intruder aircraft using the interrogations and replies to ground radar. Development was done using Borland C. I also worked on the original development of the NACWS in the early 1990's.
Development of Prototype ADS-B System
Co-developed the original prototype BF Goodrich Automatic Dependent Surveillance Broadcast (ADS-B) for the FAA ADS-B Operational Evaluation. BF Goodrich was one of two companies that participated in the original Op-Eval with a working Cockpit Display of Traffic Information (CDTI) System. All of the rest of the companies were only able to record data and post analyze it. See also: http://www.faa.gov/safeflight21. Development was primarily done using Microtec C and the DAN-OS Real Time OS. Data analysis was done in Visual C++, Borland C++ and Perl
Development of Avionics Workbench
Worked on a team which developed a Windows program in which BF Goodrich could simulate or replay data from various avionics sources. We use this as part of our analysis tools when analyzing flight data. We can plot various captured data and replay it through new tracking algorithms to see whether changes would improve performance or to look for bugs. Development was done with Microsoft VC++ 6.0.
Development of National Instruments Lab Windows DLL
Developed a Windows DLL that would allow a hardware test system (OASIS) to interface to our Avionics Workbench flight path scenarios and use the data to control the OASIS system through Lab Windows. Development was done in Visual C++ and National Instruments Lab Windows.
References: Bill Schleder (614-825-2235, email William.Schleder@goodrich.com), Al Eggleston (614-825-2272, email Albert.Eggleston@goodrich.com), and Doug Gibbs (614-855-1168, email dgibbs@ix.netcom.com)
Contractor
Interface of Rockwell VarCTI (Tandem) to IBM AS/400
Due to our experience on previous contracts with interfacing Rockwell Automatic Call Distributor (ACD) Switches, Rockwell contacted us and asked us to assist General Revenue with a Beta installation of one of Rockwells latest Telemarketing Phone Switches. Developed the AS/400 RPG code to communicate via TCP/IP to the Rockwell Switch and handle the call processing. Developed library of RPG routines to shield the higher level applications from TCP/IP Socket details.
Reference: Bruce Ullrey (email Bruce.Ullrey@rumpke.com)
Contractor
CA Warehouse BOSS Development
Support for clients using CA Warehouse BOSS. Development was done in RPG III and DB/400 (SQL). Warehousing and Shipping has rapidly changing labeling requirements, with the complication of different shippers having different labeling requirements, especially in overseas shipments. Added customizations to Warehouse BOSS for 3X Corp to satisify their clients, Phillip Broadband and Shiseido, needs.
Reference: Cindi Baker (email cbaker@lauzau.com)
Senior Technical Consultant
Development of extensions to CA Warehouse BOSS
Developing methods and procedures for Warehouse Logistics. Helping clients adapt and deploy CA Warehouse BOSS. System Integration of existing client environment with Warehouse BOSS. Customization and development of extensions for CA Warehouse BOSS using RPG III, RPG IV and DB/400 (SQL) on the IBM AS/400.
Maintenance of internal NT Network and administration of PCs. Setup Microsoft SNA Server, to eliminate the need for Twinax cards in each of the PC to connect to the AS/400.
I developed a package to generate labels from a description on the PC and create the appropriate DDS and RPG programs to interface with BOSS. I supported IPDS, Sato, Zebra and Windows printers. Software was developed in Perl.
Helped establish the Distribution Software Website.
Distribution Software was purchased by Computer Associates.
Reference: Bob Musto, Chris Conner (cconnor@insight.rr.com)
Contractor for Keane
Large Scale Migration of User Environment, Integration Coordinator
Two contracts with Ron Fox under the Total Network Management (TNM) Group.
The first, one of two people assigned to the migration of the user environment from an Amdahl running UTS UNIX to a set of High Reliability NCR boxes running System V.3 UNIX and NCR Lifekeeper for failover. The migration of the development environments required porting of hundreds of programs, most written in C and C++, but in addition, a number of other languages and script languages, ksh, sh, csh, Perl, Awk, F77, etc. , in addition to the logistics of configuring and setting up the NCR boxes. Migrated the entire development environment, including compilers, utilities, email, networking, etc. A wide variety of UNIX tools were used.
The second contract was as the Integration Coordinator for TNM. TNM is a large scale hetrogeneous network management package, capable of monitoring and managing a large a wide variety of network elements from SS7 & 5ESS switches to SNMP managed items. TNM was a large body of code written in C and C++, using an Oracle database, BaseWorX, Tuxedo with an X11 front end. The code would run on High Availablity Tandems and HPs with HP (HP-UX 9,10) and Sun (Solaris) Workstation front ends. Connections to the managed items were made through ethernet, X.25, Datakit and serial interfaces. Was responsible for integrating code from different teams into the base release and executing regression tests on the code. Also responsible to coordinating the lab environment for testing.
Reference: Ron Fox (email rdfox@lucent.com)
Contractor for Keane
Integration of Advanced Call Processing Functions
On a team people who developed an Interface between the Rockwell Automatic Call Distributor (ACD) Switch and their S.O.S. and Reservation applications on an IBM AS/400. Code was developed in RPG III. Connection to the ACD was done using X.25
Reference: Mike Kursic
Contractor for Keane
Porting BaseWorX to Various UNIX Platforms
Ported BaseWorX version 4, 4.1, 5.0, 5.1 & 6.0, an internal middleware product to several UNIX platforms, including Dec Alpha (OSF), Stratus (Intel i860,FTX 2.2.1), Tandem Star Server (MIPS R3000,FT 4.0), NCR 3600 (System V/486 Release 4 UNIX) HP (9000, HP-UX 9.0), Sun (Sparc,Solaris 2.3) and an Amdahl (UTS 2.1.5). Code was primarily C and C++. BaseWorX builds uses and builds on several software technologies, including ASN.1, TLI, Sockets, Streams Pipes, Sun RPC, Tuxedo 4.1 & 4.2, Oracle 6.0, NLS an enhanced pattern matching package, ksh, nawk, C, C++, NMake, Buster and others to provide programmers with a very high level tool box to build applications from. Heavy emphasis on interprocess communications.
Reference: Tom Lee
Contractor for Keane
Screen Scraping Screen Reformatting Application
Dan Sabo and I developed a Windows Based application that would allow Telxon to reformat IBM AS/400 applications to fit on hand held display. We did this by adding a screen scraping application into the RF Router. Development was done in Microsoft C. Used Twinax 5250 networking to the RF Router.
Contractor for AGS/Keane
TCAS Based Laser Control
Due to familiarity with BFGoodrich Flight Systems TCAS, was asked to prototype a proof of concept laser control system. We configured, designed, and programmed a system which allowed a PC to accept ARINC 429 data from an attached BFG TCAS791 and in response to intruder information selectively turn off lasers in a permanent laser light show at the Las Vegas Hilton. Helped demonstrate this prototype at the Hilton. (Prior to rollout, another company's laser light show flash-blinded a commercial pilot. Prompting the FDA to ban all unterminated laser displays.) Development was done in Microtec C and i960 assembly language.
Contractor for AGS/Keane
Electronic Medical Claims Processing Service
Based on our experience with AIX, Nationwide asked us to help them convert their Electronic Medical Claims Processing Service from a combination of PC based and a mainframe X.25 connection to use IBM RS/6000 Servers exclusively. The current design only allowed one connection per PC and one connection to the mainframe. Using the RS/6000s, we were able to support a large number of incoming transfers per server eliminating a large amount of hardware. Some of the doctors who had been submitting their claims for a number of years, did so via an X.25 link, so the new software had to support the old link method. Using an IBM library, I wrote the software to do the X.25 link and configured the hardware & software to allow the modems to accept either type of call.
Contractor for AGS/Keane
ERS and KRS Performance Analysis
One of a number of smaller contracts with Rockwell International's Switching System Division. Their new Reporting System software for their Spectrum and Galaxy Automatic Call Distributors (ACD) had performance problems. Written in C, and C++ on OS/2 and using a Network Database (dB-Vista) to store ACD data. We analyzed and profiled their applications and suggested changes in coding that would allow a large increase in performance.
Although, we were not allowed to make official changes to the code, we built an internal version to demonstrate the performance improvements that could be had by our suggested changes.
Reference: Henry Lee
Contractor for AGS/Keane
Development of BF Goodrich TCAS I
Part of a team that developed BF Goodrich's original Traffic Collision Avoidance System (TCAS I) under contract from the FAA. Involved from the early stages through flight testing and data analysis. Development was done with Microtec C, the TI TMS34010 C Compiler, i960 assmebler and 34010 assembler. Data Analysis was done in Borland C++ and Perl.
I was responsible for a large number of the Aircraft Interfaces, including ARINC 429 for Synchro, Position, Barometric Altimeter, Radio Altimeter and discrete and analog interfaces for the same.
Development of BF Goodrich NACWS
After the TCAS development, I worked on a team to help finish the development of the Navy Collision Warning System (NACWS). Development was done in Borland C and x86 assembly language.
References: Bill Schleder (614-825-2235, email William.Schleder@goodrich.com), Al Eggleston (614-825-2272, email Albert.Eggleston@goodrich.com), and Doug Gibbs (614-855-1168, email dgibbs@ix.netcom.com)
Contractor for AGS/Keane
Object Oriented Programming Class
Gates McDonald was starting a project using C++ and wanted to give their programmers a quick start, since most of the programmers on the project were Cobol programmers who did not know Object Oriented Programmming. I gave a two day class on Object Oriented Languages, including an overview of common concepts: Objects, Abstraction, Classes, Instances, Methods, Encapsulation, Messages, Polymorphism, Early & Late Binding, Inheritance, etc. I discussed uses for Object Oriented Programming, how they can be applied to business, pitfalls, implementations in modern languages, such as C++, Objective C and Smalltalk, etc. The second day I spent discusing how to apply Object Oriented Programming to Client Server Computing, Distributed Databases, Remote Procedure Calls, etc.
Contractor for AGS/Keane
System Evaluation
Bohm-NBBJ is an architecture firm in Columbus that was faced with replacing their PICK based system for which they had developed a large amount of custom software that they were dependant upon. A group of AGS consultants evaluated teh environment and finally recommended a dual OS environment (UNIX/PICK) and a selection of machines that would be capable of supporting their needs.
Contractor for APR
Cardinal System/38 Download Package
Wrote a package for terminal emulation and download functions to allow a PC to interact with Cardinal's System/38. The package emphasised ease of use, so that Rental Managers without computer experience could upload and download data. Written in Microsoft C and x86 Assembly Language. PC's would dial into a Renex Protocol converter to access the Twinax network to the System/38.
Contractor for AGS/NYNEX
Developer on NYNEX Allink
Developer on NYNEX Allink project. A large scale hetrogeneous network management system with an expert system shell for problem resolution.
Allink is capable of interfacing to a wide variety of network management protocols. The system is used in hetrogenous networking environments to manage large voice/data networks. The processing was distributed across Sun Servers and Workstations.
Project was developed in Objective C, C++, C, Ingress, Oracle and Nexpert. Objective C was used for communications and the User Interface. Nexpert was used for diagnosing and correlating problems and presenting the problem in simple english terms. Ingres was used for storing information about the configuration of the network and historical problem reports.
Worked on the communications interfaces to the networking protocols including Netview, SNMP, X.25, TCP/IP and a variety of others in order to obtain management information from network elements. In order to adopt to networking protocols quickly, we developed a generic method of parsing the incoming network management protocol, into an internal NYNEX format.
Contractor for AGS/APR
Management of TEL Development Team, Graphics Device Drivers
Development of Graphics Device Drivers for TEL, Windows and DOS BIOS drivers for internally developed 34010 and 34020 Graphics Boards. Development was done in C and x86 and 34010 Assembly language.
References: Rich Flood, Jim Tucker (217-344-6397)
Contractor for AGS/APR
Development of Financial Applications Tools
I was hired as a contractor to help NCR's Financial Applications Tools Group to help design their new Bank Branch Automation (BBA) software tools. Originally, NCRs Bank Branch Automation tools had all been built under the NCR TMX Operating System (similar to Motorola's Versados) and the main portion of the code was developed in COBOL. The management at NCR mandated that all new work was to be done under C and UNIX. I was involved at each step design, training of the Financial Applications Tools Groups for the UNIX and C environment, development of the new BBA tools. The system comprised a set of libraries that applications would use in integrating NCR equipment into Bank Branches. These tools included Electronic Journalling, data recovery, query routines, security, interprocess communications, user sign on/off.
The resulting tool sets ran under both PCs running MS-DOS and on NCR Towers running SVR2.2 UNIX.
Contractor for AGS/APR
Development of Crime Insurance Package
The Federal Government dropped support for the Federal Crime Insurance program leaving the burden of the program on the State. Ohio Fair Plan Underwriting Association obtained a package from North Carolin's State Insurance Agency that was fairly close to their needs. I set up a network of PC's and installed the networked version of dBASE III+ on the system. I converted the package to support multi-user access and enhanced the product ot suit Ohio Fair Plan's needs.
Contractor
Development of Lead Tracking Software
Development of Lead Tracking Software in Basic Plus 2, on a PDP-11 running RSTS/E.
Reference: Dick Glenn (614-889-1355, email glennd@oclc.org)
Contractor
Development of Construction Management Package
Development of Contruction Management Package for Tracking Progress and producing Application and Certificate for Payment documents. Developed in dBase III/III+ and "C".
Reference: Dick Glenn (614-889-1355, email glennd@oclc.org)
Contractor for APR
Development of Software Quality Metrics Reporting System (SQMR).
Part of a group that developed SQMR for AT&Ts Software Quality Assurance Group. This system takes in software event histories (problem reports, modification requests, completion dates, fix on fixes, etc.) and prepares a report on a scale common to other projects. This allows projects to be compared side by side and decisions made about the quality of the software and documentation. This is done by comparing data such as number of open bugs, complexity of code, how long bugs are open, how many bugs are known, time to fix bugs, modification requests, etc.
The code was written in C and is portable across machines supporting UNIX System V R2 or later. This included development and testing of the product on a 3B2, 3B20, VAX 8650, and an Amdahl running UTS. The product used Documenters Work Bench (DWB) (comprised of troff, PIC, tbl, etc) as the foundation for its report generation, with graphical output going to either bit mapped laster printers or the AT&T Dot Mapped Display (DMD or Blit) terminal. The user interface was created using Curses and Terminfo. We developed graph plotting routines which superceded the capabilities of grap and gps (UNIX plotting utilities). The code was developed in C and Shell. I was involved with all phases of the development of this product, including design, development and testing.
Contractor for APR
Porting of Micro Plato to the PC environment.
The Control Data Corporation (CDC) Micro Plato Conversion project involved porting the CDC Micro Plato from Z80 assembly language to the "C" language and making the system portable. CDC had for many years had a very good set of Computer Aided Instruction (CAI) tools available to the public. The system was heavily graphics based and provided high level tools to authors to create new CAI courseware. This system, the Plato System, originally ran only on CDC mainframes. During the 70's CDC created a terminal specifically designed to run the Plato system more efficiently. The major increase in efficiency was accomplished by downloading code into the Z80 based terminals and running the interpretter there. This took much of the burden from the CDC mainframes. When IBM PCs started becoming popular, a decision was made to support these as CDC terminals. To accomplish this, CDC initially used a cross assembler that took in Z80 code and produced 8088 machine code. Unfortunatly, although this was a quick solution, there were several problems and it only solved the problem for the IBM PC. The next step was to convert the terminal software into a more portable form. I was part of 4 person team hired to do the conversion. We converted the interpreter to C and kept a close watch on the portability by making sure that the code ran both on the IBM PC (using Lattic C) and our ISI Optimum running 4.2 BSD UNIX.
Partner
Hardware Design of Industrial Local Area Networking Equipment
Hardware and Software Development Including
Bachelor of Science in Electrical Engineering
Grade Point 3.33/4.0, Grade Point in Major 3.72/4.0
Some Important Courses
Theory and Design of Digital Computers Switching Circuit Theory Minicomputer and Microcomputer Structures Digital Control Systems Independent Study in Digital to Analog Systems Electronic Devices and Circuits I, II Electron Device Physical Theory I Solid State Microelectronics Lab I Solid State Microelectronics Lab II (Fabricated Silicon MESFETs) Switching Circuit Design
Post Graduate Work towards Masters in Electrical Engineering
Grade Point 3.61/4.0
Some Important Courses
Solid State Microelectronics Lab III (Investigating properties of Metal-Insulator-Semiconductor (MIS) Structures) Microprocessor Laboratory Computer Aided Design of Active Network & Logic
I enjoy playing with computers and racing ATV MX. I have built my own data aquisition system to analyze the performance of my Quads (ATVs). This system includes output of Horsepower, Torque, Acceleration. I build up my own engines using a combination of Engine Simulators and Software that I've written.
My Home Page: http://my.ohio.voyager.net/~edt
My Hobby Page: http://my.ohio.voyager.net/~edt/hobby.html
My MoBlog Page:http://edt11x.textamerica.com
| Click here to contact Ed |
| Home | Pat | Dan | Ed |