Friday, May 9, 2014

Putting the Most Important Things First

Twenty years ago today, on May 9, 1994, I had one of my greatest personal work-related triumphs.  It was a Monday, the day after Mother's Day.

For the past six months I had been leading a development team creating a completely new version of our company's software.  This particular application was my baby; I had designed it and had convinced the company that it was best way to handle a growing customer base and getting our clients off the old, buggy, single line-of-business software.

Not only had I designed it, but the company had even let me name this new product.  I was intimately familiar with all of its files, all of the code.  I had a great team working with me, and we clicked like a well-oiled machine.

On that day, we had installed the software at a major client's headquarters, as a Beta Test site.  We spent the day hand-holding the users, going from desk to desk, answering questions and giving pointers.  Sure, we had a few glitches, not the least of which was the discovery that the memory manager that I had designed was not up to the rigors of the abuse the clients were giving it.

But, all in all, it was a banner day, a day which I count among one of my greatest career achievements.

Around 7:30 that evening, we were exhausted.  The team was gathered in the server room, analyzing dumps and traces, trying to figure out how we were going to replace the memory manager.  We were laying out the schedule for the next day and handing out debugging, code-fixing, and hand-holding assignments.

Suddenly, the group leader's pager went off.  He looked at the number, expecting it to be a client, and he said, "BobR, I think your wife is trying to get in touch with you."  This was before cell phones were commonplace, and I wasn't at my desk, so she had paged my boss.

I called her and got the news I was expecting to hear.

Twenty years ago today, on May 9, 1994, my Dad ran his last race, fought his last fight, and drew his last breath.  He had finally lost a very short battle with a fast-spreading cancer.

For the previous six or so weeks, he had been in the hospital in Los Angeles, his life ebbing away.  I had had to make the painful decision not to fly out there from Kansas City until the end, knowing that when I had seen him just nine weeks earlier, it was going to be for the last time.

At that moment, the problems with the memory manager were flushed from my mind.  My boss told the team that we were done for the night, and we headed home.  The problems with the software would have to wait.

It is difficult to provide Winning Support when you are faced with a personal tragedy.  It is difficult to serve others when our own lives are in turmoil.

I learned a couple of important lessons that day.

First and foremost, your family comes first.  Period.

Yes, I truly believe that we are to serve our clients to our utmost, but we also have to consider our family as our most important client.

If your clients are more important to you than your family, I would suggest that you need to take a long, hard, serious look at your life.  Clients are important, jobs are vital, and work needs to go on, but clients and jobs will not be around forever.  Your family, on the other hand, should be your refuge, your place of respite, your primary responsibility.  Cherish those around you.

If you have a husband, wife, partner, brother, sister, son, daughter, father, mother, or any other close loved one, then put down the mouse, step back from the keyboard, and give them a call.  Better yet, go see them and give them a hug.

The second thing I learned is how important it is to have a good team around you.  Over the next day, I had to develop a work plan for the team, reassign all my work, bring a team member up to speed on the memory manager, get ready to fly across the country, design a headstone, and prepare a eulogy.  I had an awesome team and they all stepped in and supported me in my time of grief.  And the work got done without me.

If you are a one-person shop — if you are all alone in your position — do yourself a favor and find a friend.  Buddy up.  Cross train someone.  Do some pair programming.  Find someone who can help shoulder the burden when you need help.

Providing Winning Support is an endurance race, not a sprint.  Take care of yourself, take care of your family, and then take care of your clients.

You cannot serve others well — you cannot provide the type of Winning Support of which I know you are capable — if you aren't putting the most important things first.

Others stepped up to help me when I needed it, and I want to pay back that favor.

If you need some help, I'm here for you and will help in any way I can.  Feel free to leave comments below.  I would love to hear from you.  How may I serve you?

Let's start Winning Support.

Sunday, May 4, 2014

Winning Support Through Selflessness

On April 11, 1970, the Apollo 13 mission was launched with the goal of becoming the third time that humans were going to step onto the surface of the moon. Two days later, an oxygen tank exploded, which then caused the other oxygen tank to release its contents into outer space. This crippled the Service Module.

One of the primary functions of the Service Module was to supply power to the Command Module, which housed the astronauts. With only fifteen minutes of power left, the astronauts were forced to move into the Lunar Module — which had limited, self-contained supplies of oxygen, water, and power — and use it as a lifeboat.

Instead of trying to land the crew on the moon, the mission became focused solely on bringing them back safely to earth.

For the next four days, extraordinary measures were undertaken by the NASA support staff. Flight technicians stayed at their consoles around the clock, working on every conceivable aspect of the rescue mission. Calculations for consumables such as oxygen, battery power, and water were fed into the computers. Engineers had to write completely new procedures and test them thoroughly, in just a matter of days. Simulations were run, checked, double-checked, rerun, and then re-verified.

Their selfless devotion was successful, and on April 17, 1970, astronauts Jim Lovell, Jack Swigert, and Fred Haise landed in the South Pacific Ocean. The story of the rescue became the stuff of legend, spawning books and a blockbuster movie.

The survival of the crew and their safe return stands as an incredible example of Winning Support.

Mission Control staff supported the astronauts by designing new solutions and in giving detailed instructions by which to carry out those solutions. They didn’t have email in those days, so Communications staff supported the Mission Control technicians by relaying messages between consoles using a pneumatic tube messaging system. In fact, they even delivered sandwiches to the Mission Control room using that same system.

One of my former managers was a computer programmer for a NASA sub-contractor. She supported the engineers who were performing the calculations and running the simulations. She spent the entire rescue mission in the basement of the Johnson Space Center hand-checking printouts of diagnostic calculations made by the computers to make sure the computers themselves weren’t malfunctioning. She slept only while waiting for the printers to finish churning out the next report to be checked.

There are many lessons to be learned from studying the Apollo 13 rescue mission even though most of us are not rocket scientists or hold others’ lives in our hands. Whether we provide support for nuclear plants, hospitals, office software, video games, or content-driven web sites, there are lessons that can help us provide Winning Support to our own clients.

One of the most critical elements of the Apollo 13 mission was the attitude of all involved: Failure is not an option. Each person involved with the mission had to be selflessly devoted to the astronauts, putting the needs of the crew and of the mission ahead of his or her own needs. In effect, the mission support staff had to adopt an attitude of servanthood toward the crew whose very lives depended upon it. The consequences of not following through on their tasks did not have to be explained.

In my own quest to provide Winning Support, I have had to ask myself some tough questions:
  • How much of a servant’s attitude do I bring to my job in supporting my client and in maintaining our software?
  • Do I put the needs of my end-users above my own?
  • Am I putting others first?
  • Am I here to serve my clients or am I just collecting a paycheck?
I have found that how I answer these questions has a direct bearing on my own job satisfaction, and I am absolutely positive that this is especially true in a Support or Maintenance role. The ongoing, day-to-day grind of facing never-ending problems from the field has the potential of eroding a person’s soul. The Internet is full of stories of Support technicians who have erupted towards their clients, walked off their jobs, and ended their careers in frustration.

I don’t want to be one of those stories, and I’m pretty sure you don’t want to be, either.

From painful introspection, I know that when I have not had a servant’s attitude toward my clients, my job has seemed frustrating. When I have put my needs first, I felt like I ended up in last place.

But yet, that same introspection reveals that when I have been most fulfilled in my career — when my job satisfaction has been the highest — the needs of the users have been first and foremost in my mind. My best work — my most creative solutions — have come when I have tried to solve their problems, and not my own.

Napoleon Hill was a man who studied the movers-and-shakers of the early 20th Century and tried to encapsulate the secrets of their success. He became successful in his own right, becoming an advisor to two Presidents of the United States. He commented on this very subject, saying, "Great achievement is usually born of great sacrifice, and is never the result of selfishness."

The support staff at Mission Control whose efforts brought back Apollo 13 exhibited that sacrifice and unselfish behavior.

Compared to Apollo 13, our jobs might be considered mundane, and lives may not hang in the balance. However, I believe that if we put our clients first, we will achieve great things; and if not great things, then great satisfaction.

The best way to serve our clients is to follow good, solid principles in our code. We can make life easier for them by making our software easier to use. We can provide clean and efficient solutions. We can clean our code so that future changes in requirements have a minimal impact.

Winning Support starts with an attitude; only time will tell where that attitude will take us.

Let’s start Winning Support.