Carnival game

December 3rd, 2008

When I was a boy I went to a carnival and attempted one or two of those games designed for you to fail. I could not climb the balancing ladder far enough to ring the bell. But I was convinced that if I was given a few more tries I would make it.

These days the game is called “Try to Get Anything Done Aside from Expedites.” I’m going to win the game tomorrow, I just know it.

With the set lead time pushing our delivery dates months out for “low usage” spare parts, the volume of expedite requests has been steadily increasing, Our service centers in particular have learned that it usually pays to expedite their orders if they actually want the parts to complete a repair; at least half of the parts are sitting on the shelf, waiting for the set lead time to elapse.

I am supposed to review the expedite request filed by the customer service rep to make sure that it is an acceptable request. The former Vice Admiral had declared that our plant would not expedite anything, so as to preserve the original build schedule and leave us fully responsible for any failure to adhere to the schedule (rather than blaming the reprioritization of order B for the late shipment of order A). That policy gave way to only expedites that met certain conditions being allowed: strategically important customers, customers with operations shut down for lack of a tool or part, or orders where we had already missed our original promise. But it was never really clear who the strategic customers were; oddly enough, they all think they are important. And then we would allow expedites if they paid air freight charges. But then some customers were close enough it didn’t make sense to air freight. And then we put the spare parts as well as the complete tools on set lead time, and we had abundant product on the shelf and it made no sense to wait two months to ship the part (where it had been almost tolerable to wait a few more days to ship a complete tool). So I am still supposed to enforce the revised rules, but so many orders meet one of the criteria or the other and there are so many expedites that I rush through, it is hard to watch for those few that do not qualify.

Basically, my function is to either a) pull in the ship date if it is obvious we can afford to, or b) advise planning how many pieces must be completed to fulfill the demand up to and including this order, so that they can advise a ship date. Both of these functions should be completely automated by a computer system that was worth using, but there are a couple of exceptions to the normal first-in-first out shipping sequence (strategically priority customers, customers who paid for expedited delivery) that render the lineup of orders as the planner sees it an unreliable guide to the sequence that the orders will actually allocate stock. The system can be set to ship the order if we have stock, but sometimes the available stock on hand will run out before we can satisfy the upcoming demand, and nobody thought to make the system smart enough to check if shipping order B today would leave order A high and dry tomorrow.

I simply cannot expedite orders all day long. On the other hand, I am supposed to make sure all the expedites get back to the customer within 24 hours. And once I have reviewed an expedite and sent it to the planner, the planner provides a date and sends the expedite back to me. Then I review to ensure that the planner’s response was satisfactory and send it back to the customer service rep, who calls the customer to inform them of the result of the expedite. It’s a horrifically inefficient process, and one of the nasty effects of this is the “slosh” effect. If I clean out my inbox of all expedites in the morning, in the afternoon the planners will be sending me back the replies at the same time as customer service is entering new expedites. I work the oldest expedite first to keep the total turn around time down (and because it is the easiest way to methodically work through the inbox), so I have to work through the planner replies before I can get to the new expedite requests. And, if the customer does not like the response on the expedite, the customer service rep will send the ticket back to me again. Thus, if you imagine the expedites as a tub of water, if I push the expedites over to the planner’s side they will come rushing back to me later in the day, often accompanied by a wave of new expedites.

Yesterday morning I found that one of my automatic reports had failed to run. This report gathers the information on lines that were shipped late so the planners can note why they were shipped late, forming a data set that can be used to review why we are late so often. Some of the information this report needs expires over time, and the results of the process are reviewed daily, so this report has to be fixed promptly when it fails. Once I had gotten that fixed (down at the other end of the building where I am borrowing the use of some low-usage PCs to do my slave labor) I went back to get started on the expedites for the day.

There are always other things that must be fit in as well, such as answering urgent e-mails (like questions from my boss or the plant manager), reviewing reports that show how well things that I am (supposed to be) monitoring are going, making sure affairs are in order for the most important customers, and answering phone calls. All in all I made good progress and was starting to get some month-end report for my boss that I was supposed to have gotten the day before. Right about that time the expedites started to come back from the planners, the production manager asked for some information, and I found out there was some kind of problem with the data I was going to give my boss.

Then the customer service reps started contacting me by instant-message that they particularly wanted to get out the door. And I found out that I had a major problem with my data, and likely all the other sites where I had helped set up standardized databases also had the same problem. Except, out of the three other sites, one of them might have already been fixed. So I called my fellow there and talked to him–and it sounded like he had fixed the problem, but wrongly. And that could have affected a lot of the reports that had been generated at this location, which incidentally was the headquarters location and the primary source for most of my boss’s data that he had probably already started passing on way up the food chain.

And then someone from one of the other sites contacted me by instant message to say that there was a problem with their copy of the Bridge, the complex orders shipped late program I referred to earlier, the one I had gone on a multi-state tour to set up back in October. So by this time I am trying to assess the damage to various interrelated databases at three different sites, with a fourth probably in dissarray as well. Quitting time was approaching fast, and even though I am not supposed to work overtime I could tell there was no way I was leaving on time–let alone getting to that report that the new purchasing & supply manager had asked me for (he’s in the job I used to report to, and an important ally in my current role, so it behooves me to make a good impression if possible).

Basically, at this time I was panicing, and I knew it. I needed to talk to someone to calm me down and talk me through what might be wrong with the databases, how to ascertain that, and how to fix the problem. The only person I had managed to talk to so far was the notorious individual with a knack for misunderstanding and mistrusting my databases and fixing them in harmful ways, the individual I had thought was going to be fired several months ago when we were setting some of these databases up.

My standard workplace setup uses two screens (laptop and monitor); one of those screens is generally devoted to four windows, two sessions each on two of the production software’s databases (one the local factory and the other the “mothership” system). Sometimes I am working across all four windows and sometimes just one or two. I generally try keep each window in a different “role” so that I can compare information when necessary, as it often is (very few screens on the system can show me everything I need to make decisions). Then of course there is always a window open for the e-mail program, two Access database windows open to assist in identifying the sequence of shipment on expedites, a internet browser window open for actually updating the expedite tickets, and usually at least one more Access database with several windows open, a couple of e-mails, and one or more Excel files. And probably some instant messaging windows, too.

On top of this mix I had a remote connection to systems in two other sites, and several windows open in each of those as I tried to diagnose the problem or various problems that could be affecting the accuracy of reports that my peers were sending to my boss for crucial month-end reports.

I was instant-messaging my boss’s second in command, G.J., trying to determine how their data had been fixed and whether it was an accurate fix, and just trying to unload on someone so I could calm down enough to think straight. She was not sure about the data as the person I had already talked to was supposed to fix it. About the time that I determined to my satisfaction that their data was okay I got a message from the first guy, because G.J. had apparently gotten after him asking him what he had screwed up this time. Actually he hadn’t done anything wrong, contrary to the impression I had gotten over the phone, and he even sent me exactly what I needed to fix up my database (and the others). The problem I was contacted about for the third site was not directly related to this major problem at all, although this third site did suffer from the problem, so I was fixing their problem while I was wondering what I was ever going to do about mine until I had gotten that file from the infamous fellow. I hadn’t been expecting that but I was putting off the big problem waiting for a solution to come to me out of the blue.

By that point I had called my boss to let him know about the problem (especially as he had left me a message asking why I hadn’t gotten him the data yet), and also contacted my peers in other sites to warn them they had sent bad data. It turned out that the good data from the headquarters covered for the bad data from the other sites.

I was not willing to leave my database in dissarray, so I took the time to fix it, although it wound up taking more time than I had guessed and pretty well preventing me from doing anything else while I was at it, although I was mostly sitting waiting for queries to finish executing.

I wound up going home about two and a half hours late, with 13 open expedites (about an hour’s work) that had all been opened at about 3 pm. I am supposed to leave at 4 pm and at 3:30 I am supposed to measure how many expedites are open with myself and all the planners. I hadn’t gotten the report for the production manager or for the purchasing and supply manager either.

When I came in today, the first thing I had to do was run a daily report that requires data from at least seven different sources and then copy part of that onto a giant whiteboard for the morning production meeting. At the production meeting the plant manager told me I had an error in a part of the report I thought was solid, and the plant manager asked me to change another part of the report completely.

This is a report I have been longing to automate for over a year now. I’ve never gotten around to automating it because the information it needs is pretty unique–automating it does not help me do anything else, nor does any of the other data collection I have already automated help me with this report. But because the report has so many different data sources, and is a daily report in an excel file, it is prone to all kinds of updating errors (accidentally saving over reports, forgetting to change something, or some of the semi-automatic parts of the report becoming obsolete or inaccurate). It desperately needs to be automated so that I no longer have to waste time on it (except when this automatic report fails, as they all do sometimes) and I can’t make so many mistakes by touching it daily, and the plant financial manager can have it on time every day while I am doing something else. Besides, any decent job automating it would make it easy to take care of the purchasing and supply manager’s request, as well as the plant manager’s request.

But all I could manage was working out the problem that the production manager had pointed out, which took more time than I expected. Meanwhile I had gotten an e-mail from someone else asking me to change a report I had previously set up for them. The same person called me later in the day asking for a change to another report. Meanwhile the expedites continued to go up; many of these were from yesterday and need to be sent to the planners soon to keep the turnaround anywhere close to 24 hours.

The number of open expedites managed to climb to 37 (about three hours of work) while I was working on them, although I was also working on fixing the major database issue for the second site at the same time. I sent a distress call to headquarters asking for backup on the expedites.

In the end, I managed to fix both reports for the person who called me today, take care of the production manager’s request from yesterday and the error he found today, fix the second site’s database, and help the infamous fellow fix another problem with the On Time Delivery Bridge for the headquarters (I am supposed to be teaching him how to maintain this creation of mine). I even got the expedites down to zero before 3 pm, partly because I had help. I still had to report 3 expedites open with me today because after 3:00 pm the tickets “sloshed” on me again; it actually went from 3 to 10 while I was on the phone with a planner helping him with one of them, but I cleaned up all the easy, send-back-to-customer tickets before I reported. (I cheated a little there, and ran the report late.)

I only went home half an hour late. I still didn’t get the report for the new purchasing and supply manager, or the change the plant manager asked for. But tomorrow, I am going to get all my expedite tickets cleaned up early and take care of that. And I am going to make the obligatory updates on my self-evaluation that I have to get done this week (or maybe it is due tomorrow).