Sunday, June 26, 2005

Doing whatever it takes

I am not sure this is a lesson I learned in Kindergarten, or if it is a character trait I was born with, or is a philosophy I adopted or develop during my life, but I am still amazed at people who do not step up to a challenge when a task needs to get done.

Case in point. Friday I was working and the client management decided at 2:30 to commit to running a data conversion. This was not a complete surprise since it was on the schedule. As with any conversion, the timing of the conversion is critical to the success. This means we have to wait for the users to finish with the old system, grab the data, run through the conversion, load the data into the new database, and test the heck out of the system and verify the correct data was converted. Anyone who has performed a conversion knows the importance of the timings, the importance of the validation, and the importance of all team members coordinating their efforts to ensure success.

This conversion has the following players:
  1. Management: corporate managers who fund the staff, set priorities, and run the company.
  2. Project Manager: coordinate all team players, schedule the project, make sure we are meeting deadlines, and ensure proper resources are working toward success.
  3. Onsite consultant: application experts for the new system who know the data and know if the system is working properly with the new data.
  4. Business Analyst: business experts who know the old system, who know the data in the old system and how to verify the correctness of the conversion by reviewing the data in the new system.
  5. Developer: software craftsman who know how to extract the data from the old system, translate it into a format later imported into the new system.
  6. Help Desk: staff of experts in support of the hardware, networking, Citrix, operating systems and general business productivity software.
  7. Users: Experts in running the business they are in using the software provided to them to perform their jobs.

My role in this project is Developer. I extract the data from one or two different FoxPro systems (data stored in DBFs), and format the data into delimited text files for import into a SQL Server database. I was informed of the conversion by both management and the Project Manager. So I call the users and coordinate a time when they are done for the day so I can compress the files and prepare them to be transferred from the plant and brought back to the corporate offices by the Help Desk. I stress the importance of everyone being out of the system. I send off an email to the Help Desk at 2:45pm to coordinate the transfer (around 5:00pm) and note the urgency and importance of the timing for the task. Communication, Communication, Communication (or as I refer to it, Communication-cubed).

I call the end users at 4:45pm (which was fifteen minutes late because I was dealing with a different support call). All I ask for is that no one is in the system so I would avoid possible DBF corruption. I was assured this was the case. I zipped up one folder and then start the second set. Before the second set was done the user informs me that they need to go home. I asked them to stay so I could ensure the files were not open. They had more urgent matters to attend to than this corporate conversion of their data and left. Guess what, the files were in use and no one answered the phone when I called back.

I walk over to the Help Desk to inform them the files were ready to transfer. One person from the team was still in the office. It is now 4:55pm. I was informed the assignment to get the data was assigned to one of the people who left for the weekend and I was asked of the files could wait until Monday. In my 2:45pm email I noted the timing and urgency of the file transfer. All I was met with was resistance and questions of who made the decision to convert data on Friday evening. The manager of the Help Desk also questioned the decision. The Project Manager left for the day as well. The only one there was the developer (me) and one IT manager. After 15 minutes of groaning how the Help Desk person was going to have to give up an hour of "personal time" to copy the 100MB files, and how poor planned this was, the Help Desk person initiated the files, handed me her cell number and left for the day. She had dinner plans. While I can appreciate the dedication to family, I sacrificed my plans to help my family set up for my son's grad party and the 120 people schedule to visit the next day.

Now the only way for me to know the files are transferred is opening the files with WinZip and see if they are corrupt. At 6:30 I check and had success, but literally was flying blind. I ran the conversion and fortunately none of the DBFs were corrupt even though they were open. I sent the files to the SQL Server developer for import at 8:30pm.

So once again, despite the lack of cooperation, I delivered because I have the "do whatever it takes" gene. So management, the Project Manager, Business Analysts, onsite consultants, Help Desk and end users will not suffer the consequences of several people having better things to do than running this conversion, which is important to the future of the plant and the company and keeping the project on schedule. If I had not dedicated myself to the success of my client, this conversion would have not run. I could have easily said, sure, copy the files when you get time on Monday and went home to a peaceful household Friday evening instead of one that was behind schedule a little bit because I was not there.

I apply my "do whatever it takes" attitude in all aspects of my life. It frustrates me each time I run into people with the "I don't really care what it takes", the "I will do barely enough to get by" philosophy or approach, or what I often refer to as the clock-puncher mentality. I can tell you right now, if you ever apply to White Light Computing and have a clock-puncher mentality, forget about being hired.

It is about balance. Sometimes you put in a little extra effort for the good of the business and sometimes the business is flexible enough to let you take time for the other important things in life. With respect to working with co-workers, clients, friends, and family, be willing to step up and do what ever it take to get the task accomplished. If you have not already done so, adopt the "do what ever it takes" philosophy. You will be more successful in all your endeavors.


At 6/26/2005 10:03:00 PM, Blogger Craig Boyd said...

I got frustrated just reading about this. It brought up all the times this type of thing has happened to me. "Infinite Frustration" is the condition of a developer who is burning the candle at both ends, seems to be the only one on the team that understands communication/teamwork, and is forced to drag fifteen boat anchors along whenever rowing somewhere important (all the while listening to "Are we there yet? Are we there yet?" from the anchors).

Don't give up complete hope Rick, their are a few of us left that will do whatever it takes, however long it takes, whenever it's needed to get the job done. It's called integrity and dedication to one's chosen craft. Good for you!

At 6/26/2005 11:14:00 PM, Blogger Rick Schummer said...

Never a thought of giving up hope on this or any project Craig. Thanks for your comment. I must be a glutton for punishment because I have dozens of stories just like this one to share.

Fortunately, I have also had the pleasure of working with some excellent teams in the past as well. This is why I know the importance of the "doing whatever it takes" attitude.


Post a Comment

<< Home