Java Programming Language Structured Query Language (SQL) Hyper-Text Markup Language (HTML5) Cascading Style Sheets (CSS3)




About Cincinnatvs...
Weather somewhere near you...
Ciber@Ford Motor Company
Arrow Strategies@Blue Cross Blue Shield of Michigan
The Judge Group@DaimlerChrysler
Kmart Corporation
CDP@Ford Motor Company
Handleman Company
United States Marine Corps
System Engineer at Kmart Corporation
August, 1995 - June, 2005
Kmart Corporation

I started with Kmart on the Pharmacy system. My responsibility was, primarily, to keep the Pharmacy Host systems up and running for the Pharmacy department at the Kmart World Headquarters. These systems were IBM RS/6000's, there were three. They were used to run a packaged pharmacy system called PDX. But, as PDX lacked certain required functionality in its initial version, Kmart programmers wrote programs around PDX in C and in Korn shell script. There were several problems with the systems as they were set up when I arrived. For one, there were three systems and only one of them was being used, at all, the others sat idle most of the time, while the one being used was always overworked. Second, the custom system supporting PDX created tons of logfiles which were hidden in several different directories and which were constantly filling up all the filesystems. Third, and most dangerously, PDX had originally been installed as belonging to user "root". This meant that, in order for users to modify files used by PDX, they had to also be user "root". Every user on all of the PDX systems was "root".

I isolated all the locations where logfiles were being hidden on the Pharmacy systems and I wrote a program in C and a Korn shell script to invoke it which would eliminate files after a period of time specified on the command line. That solved the problem of disk space for the rest of the time I was on Pharmacy.

Using NFS, I spread the load of PDX across all three boxes with the third being a hot-backup of the other two and able to pop into service if either of the other two went offline. That took care of the performance issues.

Finally, I created a new user, "pdx", and a group with the same name. All files used by the PDX application were changed so that they were owned by "pdx". Then, I revoked every user id on the systems and reissued everyone a new, unique user id. The oddball case here was a group of people who had to have the authority to "kill" each other's programs. I assigned them each unique id's, but, each with the same id number. To the system, while each user had his own directory and password, these users all looked like the same user and could kill each other's processes.

I also modified most of the Korn shell scripts in the custom system supporting PDX to send me emails periodically with important system status information. I monitored my email and kept myself apprised of all the events which occurred on my systems.

Next, for the Kmart Grocery system, to meet Kmart's requirements for Y2K compilance we needed to upgrade the PC's which operated the meat weighing scales at Kmart grocery stores from MS/DOS version 5 to the Y2K-compliant IBM PC/DOS 7. We also had to distribute the new scale control software which I rewrote from BASIC into C. It had to have a simple, automated process to upgrade DOS and install the new software when the diskette was inserted into the machine and rebooted. And, everything had to fit on a single 3.5" bootable diskette!

In July, 1998, I moved to the Kmart Solutions project, which was an attempt to expand the product offering at Kmart stores without expanding the actual floor space. The hope was that Kmart could offer sheds, playscapes, appliances, a more comprehensive music catalog, furniture and other stuff, through an in-the-store web application, for which the customer could pay at a regular cash register. My job was to take the orders placed and forward them to the companies who would fulfill them. Some of those companies accepted orders in EDI format; some accepted their orders by email; some could only accept orders as facsimiles. I had just learned Java 1.1 and this was the first application I ever wrote in it. In the end, the application I wrote forwarded orders for Kmart Solutions and the website, both of which used IBM's Net.Commerce package.

Initially, the Kmart Solutions system would print out a sheet of paper upon which the "web" portion of the customer's order was printed and a specific cash register had to be used to cash the customer out. This meant that, if the customer purchased other merchandise, they had to check out twice. My first CGI (Common Gateway Interface) program was written in C and it automatically transferred the customer's web order to Kmart's retail pricing system so that it was available from any cash register and could be rung up along with the customer's other purchases.

From Kmart Solutions, I moved to the Outbound Management System project, or "OMS". The purpose of OMS was to more effectively load trucks at Kmart distribution centers so that we could reduce the overall cost of shipping merchandise to our stores. This meant packing trucks with the maximum amount of material allowable by the physical capacity of the truck and the weight allowed by law. Also, OMS was designed to produce the most efficient route for a truck to take from the distribution center to each store for which it carried merchandise. My part of this very complex system was to allocate stock in the distribution center to particular orders based on the priority of the order and the amount of merchandise in stock. OMS was written in Java 1.2 with an Informix database.

While working at Kmart, I worked with Informix, 4GL, Visual Basic 4, AIX, SunOS/Solaris, HPUX, DB2 (for AIX and the Mainframe), MQSeries, TIBCO, Tivoli Access Manager and much, much more. But, most importantly, I learned Java and HTML.