The following is a cross section of the projects that I have worked on for various companies. While not all inclusive, nor technically in depth, it should serve to provide an insight into the types of projects that I have worked on:
• Integrate Legacy Customer Hub to PeopleSoft CRMS – Designed and coded an RPGLE program to parse an XML request, process the request, and return a formatted XML response. The request was to merge a list of customers. The merge business rules were applied resulting in one of the customers being designated as the survivor and the remaining customers flagged as inactivated. Designed and coded a Data Quality Exception Management (DQEM) system. The system provided API’s for applications to log errors that occurred during the processing of XML requests. A user interface was provided to enable the Data Quality Librarian to research and resolve exceptions. The XML documents were stored in the i5’s Integrated File System (IFS), while other data elements were stored in a DB2/i5 database.
• Perform Customizations to Food Distribution Software Package - Completed program change requests (PCRs) for clients of Integrated Distribution Solutions. Passed through to clients systems to test and deploy PCR. Coordinated deployment of changes with client representative. Maintained up-to-date copy of client code changes on centralized development system. IDS has clients throughout the United States.
• Installation and Customization of Software Packages - Installed General Ledger, Accounts Payable, Accounts Receivable, Payroll, and Personnel software modules. Customized each module to the customers needs. This usually included writing batch report programs, as well as additional interactive programs. For example, a school district required that the financial modules use the state mandated budget codes. Another example, was a requirement for the Personnel module to include an annual report to the Equal Employment Opportunity Commission.
• Salesman Information System enhancements - Overhauled a Salesman Information system to increase its acceptability and provide more functions. This system was intended for petroleum products salesmen out in the field to gain access to pricing and availability information in support of their client accounts. The prior roll-out of this system met with much criticism because of program bugs, lack of consistent user interface appearance and navigation, insufficient sales reporting functions, and lack of support. A standard set of screen appearances were adopted, then programs and displays were changed to conform to them. Program bugs were identified, then fixed. Additional sales and volumes reports were developed and added to the menus. Existing reporting and inquiry functions in many cases were improved to make accessing information more flexible.
• Helpdesk resource - Provided business and technical support for resolving day-to-day problems of a worldwide network of users in the commodities trading business.
• Taught Class on Systems Management Utility - Provided a two-day informal training class on Systems Management Utility for a bank which intended to use SMU to minimize the need for computer operators at each of their 12 branches. The informal format allowed addressing the specific needs of the banks network of AS/400's and PS/2's.
• Developed Training Materials and Taught Classes - Developed training materials for stand-up presentation on topics such as AS/400 CL programming, AS/400 Database Fundamentals, and AS/400 Backup and Recovery. The classes were presented to groups ranging in size from 4 to 23 at companies in the U.S. and abroad.
• Marketing Plan for IBM's MBNLQ - Performed a competitive analysis of query and report writing products for the AS/400. Developed a prioritized product improvement strategy for IBM's Menu Based Natural Language Query product. The improvements were designed to make MBNLQ competitive with mainstream AS/400 query and report writing tools.
• File Transfer between an AS/400 and a Unisys Mainframe - Developed the AS/400 half of this bi-directional file transfer application. The Programs were coded in CL and COBOL. The AS/400's bisync equivalence link was used to communicate with the Unisys host via 3780 bisync protocol. A CL command (SNDTOUNI) was used to front-end the transfer from the AS/400 to the Unisys host.
• Order Fulfillment System - Developed an approach for implementing an AS/400 based order fulfillment system that had previously been done on an IBM 4381. Coded a skeletal version of the main modules to demonstrate the performance and viability of the design. Once management was sold on the approach, then worked with in-house staff to construct the production Order Fulfillment System. This project was done in CL, DDS, and COBOL on the AS/400.
• Client/Server Link between Order Management System and Order Fulfillment System - Installed and setup Progress/400 Dataserver. Performed initial evaluation of Dataserver functionality. Developed sample routines for use of in-house staff to illustrate how to use the Progress/400 Dataserver from within a Progress for Windows v7.3B program. Worked with in-house staff and another consultant to design and code a dedicated PC server approach for providing batch processing functions for the Order Management System. Developed each of the server functions which interacted with the AS/400:
1. Submitting fulfillment requests from OMS to the AS/400.
2. Submitting price quotation requests from OMS to the AS/400.
3. Processing report print requests from the AS/400 to Progress Report
Builder print routines.
This project used the Progress Client for Windows v7.3B, the
Progress/400 Dataserver, and the Client Access/400 for Windows API’s.
• Mailing Label Print Routines - Participated in the design, development, and QC of Market Data Retrieval’s CD ROM based Easy Access National School Directory product. Product provided a Windows 3.1/95 database search interface and a mechanism for exporting or printing records in search results. Developed routines on the AS/400 to extract and format data on all public, private, and parochial schools, K through 12 in the United States. The routines are used for refreshes of the product database. Data was downloaded to a PC, loaded into a proprietary, encrypted format, indexed, then written to a CD ROM. Responsible for design and development of the mailing label print routines and the Windows dialogs for selecting label print options. Coding for this product was done using MS Visual Basic and MS Visual C++. The AS/400 programs were developed using CL and COBOL.
• Year 2000 Testing - Spearheaded the test team on Inacom Corporations Y2K Renovation Project. Researched into available testing tools. Selected IBM’s Workstation Interactive Testing Tool (WITT) for the keystroke record/playback and screen image capture functions. Developed AS/400 software testing tools to automate repetitive testing tasks, maintain integrity of test environments, and for the capture/compare of I/O points (DB changes, data areas, data queues, spooled files). Developed a test coverage reporting tool to identify the percentage of changed source code that had been tested during a Regression test. This was used to quantitatively prove that the renovated code had been tested. The tools provided the framework for running Unit, Baseline, Regression, and Compliance tests. Trained test team members on the test processes and tools. Developed work instructions for testing process and trained test team members to follow them.
• Communications Setup over IBM Advantis Network - Configured communications and coordinated service through IBM Advantis network for an insurance recovery service between an AS/400 and numerous IBM Mainframes. Enabled Mainframe users for 5250 emulated sessions to the AS/400 from their 3270 Mainframe attached terminals. Enabled AS/400 users for 3270 emulated sessions to the Mainframe from their 5250 attached terminals. Configured virtual printing in both directions. Coded APPC programs in ILE RPG and ICFF to process credit information requests through Equifax over the Advantis Network.
• Client/Server Presentation - Was responsible for co-development of this presentation to educate the AS/400 market of client/server technology and tools for building client/server applications. The sponsor for the development and the presentations is IBM. This is an all day presentation that will eventually be taken to IBM branches around the United States. There is interest in taking it to IBM in Europe and Asia as well. The first complete presentation to an audience was in Rochester, Minnesota, on June 19th, 1991.
• AS/400 to Sun Bridge - Assisted in coding routines in IBM's VisualAge for C++ for AS/400 to bridge invoice data from legacy AS/400 database files to an Oracle database on a Sun system.
• Business Function Servers – Developed business function servers to run on iSeries using IBM’s VisualAge for C++ for iSeries. Servers allowed business rules to be centralized for Sales Tax Calculation, Shipping, Invoicing, and Order Data. Worked with other team members to create a cross platform API for invoking business functions. Used IBM’s MQ Series middleware for intra-company cross-platform communications; used Berkley sockets for extra-company communications. Required knowledge of RogueWave Tools.h++ object-oriented tools.
• ASP Access to iSeries - Coded stored procedures in RPGLE and embedded SQL to support database requests coming from a web-based ASP application. Coded a stored procedure to accept a set of selection criteria and return a dataset of records meeting the applied criteria. Coded a stored procedure to use the values passed in to update a database record. Assisted a PC programmer in coding an ASP routine for connecting to the iSeries system, formulating a database request, and retrieving the resulting dataset returned by the stored procedure on the iSeries.
• Technical Support for Conversions to the AS/400 - Assisted companies in the conversion/migration from other hardware platforms to the IBM AS/400. These other platforms include IBM mainframes, IBM S/38's, and Unisys Mainframes. Support for these companies included providing education about the AS/400, helping to develop operational procedures, porting or rewriting applications to run on the AS/400, identifying and evaluating packaged software applications, proposing and implementing a solution that would allow both platforms to coexist until dependence on the old system is past, developing backup and recovery plans, developing security management standards, designing communications networks and installing and configuring the hardware.
• Litigation Support Modifications - Prepared an existing Litigation Support application for marketing. The RPG code was converted to comply with the software vendors programming conventions, several of the main modules of the system were rewritten, and a front-end to the system to provide easy setup of new litigation support applications was written in RPG, CL, and DDS. Worked with marketing to write the user's manual and provide documentation.
• Implementing flexible Save/Restore procedures - Examined company disaster recovery capabilities. Purchased new tapes, disposed of damaged tapes, and wrote RPG and CL programs, making it easy to add/remove libraries in the daily and weekly saves. Operational procedures were drawn up for use in recovering in the event of a disaster.