Monthly Archives: November 2011

Midnight Ramblings: The Taj Mahal

A few years ago, there was a big cross-organizational management summit, and my division’s director was the host of the event. The whole point of the summit was to exemplify and foster cross-division collaboration, which was rare in the company (rare in any company of size, really..). Our division director purchased a massive 6,000 piece lego set of the Taj Mahal for a team building exercise during the multi-day summit.

That’s all I knew to be true about the summit. I was a grunt, not first line management or higher, and certainly not middle-management or director level, so I was not invited to the summit. I had to deal with the results though, and they were not good.

The Taj Mahal team building exercise lasted only an hour or two, and that was not long enough for 30+ managers to get on the same page, more or less. What resulted was a great foundation to the Taj Mahal, with about 1000 pieces of 8 varieties put together. But, more than 5000 pieces were left in an unsorted mess, and for a team building exercise of 30+ people, the Taj Mahal’s progress looked more like an omen than a bright start to a bright future of collaborative bliss.

The resulting mess was placed on a small table within ear shot of my cubicle in the office, with anyone and everyone invited to help finish the project. For several weeks, my cube neighbors and I would hear perhaps 2 or 3 people per day come by the Taj Mahal table, sort through legos idly for 5 to 10 minutes, and leave.

At one point I overheard a conversation between two engineers putting the bricks together, they were frustrated that it was taking so long just to find the “one” piece they needed. They too gave up within 5 or 10 minutes, leaving more frustrated than they began.

A few days later an out-of-town engineer with a love for legos spent several hours on the Taj Mahal while waiting to leave for a delayed flight. He left the table a bit dejectedly, frustrated that he’d put less than 100 pieces together after a couple hours of effort.

At that time in my career I was running close to burn-out. When you’re a software engineer who works best in quiet without distraction, and you’re running close to burn-out, hearing thousands of lego bricks being pushed around day in and day out starts to get on your nerves. When you’re an engineer, and something starts to get on your nerves, you naturally try to solve the problem.

After hearing the visiting engineer leave for his flight in frustration, my first instinct was to type up a rash email and send something to our division director pleading for him to trash or move the Taj Mahal. The project wasn’t helping anyone who came near it and it was certainly annoying several of us who sat near the disaster. Instead, in a rare display of self-control, I decided first to gather evidence about the disaster before starting to type my smoldering complaint.

When I went to look at the Taj Mahal table I was immediately self-satisfied. The project was even more of a mess than when it landed outside my cube. I couldn’t wait to email the director, but I thought I’d better make some sort of contribution to the “move this!” complaint before sending the email, better to be a part of the solution than just a complainer, right?

I started placing various chunks of the Taj Mahal that were composed of 10 or 50 pieces into some boxes, and dumping 4 or 5 small boxes of 4500 unsorted pieces into one big box to tidy things up a bit. All the while I was mentally debating the zinger to include in my email, was “I’ve already packed it up to be moved to storage and forgotten!” too harsh?

In the midst of that minor OCD organizational effort, I lost myself.

As I moved these minor partially-completed chunks of effort around I noticed that several of the chunks just needed one type of piece on them, a common type. That’s where it started, I started searching for just that type of piece, every instance of that piece, and put them in a little pile to the left.

I had one piece completely sorted in only a few minutes. Then I stopped to think. I did a rough count, there were only 50 or 60 types of lego pieces in the set. A quick mental estimate told me I could sort the rest of the pieces in an hour, so I just kept sorting.

While I sat there sorting the legos I started laughing to myself, inventing a story of how the Taj Mahal project is just like any software project. The story went something like this:

Here’s this Taj Mahal lego set, a 6000 piece puzzle that 30 people were given 2 hours to solve. They solved perhaps a sixth of the puzzle in that time. Since that time, perhaps 30 engineers have invested a further 5 to 10 hours making even less progress than the original 30 leaders. Isn’t this so typical and familiar?

Wouldn’t it have been fun to be a fly on the wall watching the 30 leaders try and sort things out? Did a few leaders burn the entire exercise attempting to establish dominance, placing themselves in charge of several others? Did other leaders perhaps declare a certain chunk of the project their own and competitively set their tunnel vision on just making their piece be finished first? Were there a few more leaders who were just there to chat up their peers and didn’t really care for the project at all, idly sifting through the sands of lego pieces, seeking a gem?

Did any of that matter? Shouldn’t 30 accomplished adults be able to sort a puzzle with 50 piece variants in a couple of hours? Perhaps, but unsurprisingly, the result was a somewhat decent basic direction (the foundation) with pseudo-sorted bags of pieces strewn here and there among thousands of other pieces haphazardly tossed together in big boxes.

“Let the engineers sort it out.”, right?

And what of the engineers? Spending perhaps 1/6 as much time as the leaders on the project, with not much progress made to build or sort the problem. Were the engineers at all interested in seeing the project have progress? Was the problem space so dauntingly large that few even attempted to sort a piece here and there? Had some engineers sorted pieces one way, while others dismantled that work in favor of another half-completed sorting scheme?

Had ANYONE stepped back from the problem for 5 minutes, looked at it from another angle and thought to attack the primary problem in any project: getting the pieces sorted out? Surely someone else thought of that direction, right? Was that plan stifled in political bickering, or some other lack of harmony? Were the tunnel-visioneers mucking up everyone else with a scorched-earth policy of single-focus, leaving piles of disorder they did not care about in their wake?

Who was going to win the prize when the project was finished? And who was going to win when the project was a demotivating disaster for engineers to stare at for weeks afterward?

At the calculated rate of 70 hours (30 leaders x 2 hours, 10 hrs x 1 engineer) per 1500 bricks put together, the remaining 4500 pieces certainly was daunting. In fact, if it was going to take 200+ hours to finish this, it may never have been finished at all.

How much faster could the Taj Mahal project be finished if someone (me) put some serious effort in to evaluate, replan, and dig the project out of a ditch? Would an hour or two spent sorting all of the pieces, all of the infrastructure to building the project, make the project complete faster? Or would my time just be a waste, with the finish still taking 200+ hours to complete?

As I’m sitting here sorting this mess, I empathize with those who came before me, those leaders and engineers who bowed out in frustration. 4500 legos is a LOT of data to sort, especially when you take a brute-force approach of picking a piece at random and placing it into the correct pile, or worse: simply discarding it if it’s not the one you want. I almost gave up immediately using that method for sorting, with the same 5 or 10 minute level of effort as others, but before I gave in completely I thought for a moment.

I took a moment to do what it seems none of us have done, I pulled back from the basic goal of “sort as fast as possible” that was leading to universal burn-out and failure. Instead I re-evaluated the situation and refocused on a new goal: “break this down into something manageable.”

My solution isn’t rocket science. I dumped all 4 large boxes of pieces in one big pile, designated one box as x-small, another as small, .. medium, large. I was able to sort 4500 pieces into these classifications in less than 10 minutes. Further breaking a given box into 15 little piles per box was much easier than trying to constantly recall 60 piles for any given piece I picked up at random. *This* is the secret sauce we’re missing in this project.

We’re so concerned with where we stand, or how much fun we’re having, or an approaching deadline that we’re not putting in the time once in a while to step back from our projects and products and look at the big picture. We’re not taking time to invest the painful, and by all appearances wasteful, extra couple hours to regroup and figure out the best way to attack the problem. Instead we rush toward a deadline, descoping, throwing our hands in the air claiming the project will never come to completion, all the while holding tightly to our established “that’s how it’s always been done” processes of picking a piece at random and seeing if it fits, then throwing it back in the pile if it does not.

This should change.

Two hours later (classic estimation skills on my part, recall that I mentally ballparked an hour for this sorting exercise..), every remaining piece in the set had been sorted into separate piles, bags, boxes, etc.

Instead of emailing my story or complaint to my director. I emailed the story to a fairly wide distribution list in our organization and included not only our director, but our VP as well.

The next day, I went on a one week vacation, and when I came back, I learned that the Taj Mahal was completed in less than 10 additional man hours, in one week.

The VP spread the email around to his other reports, our director did some damage control, my front-line manager simultaneously praised my story while cautioning for perhaps warning him and letting him proof read anything I intend to cc our VP on.

Others emailed saying they loved the story, and some used my soap box as a vault for their own tangental agendas. All in all, I hadn’t been fired for speaking up and it felt good to know my fellow engineers, and even leaders, empathized and agreed with me.

One reply in particular stuck out. One of my cube neighbors responded to me providing a perspective I had not even considered: He said that he himself had spent a couple of hours wading through the sands of bricks, and that he found it soothing and almost zen like to approach the problem in that way.

His response made me think a bit more about the Taj Mahal project and the similarities to software product & software company development. Though bright engineers with an OCD edge may be able to efficiently bring a project into focus, it is still vitally important to have bright engineers with the zen edge on your team as well, because otherwise, your OCD guys will suck out all of the fun and perspective. 🙂

In the real world, software products have deadlines to hit. Without a ship date in mind, you can’t synchronize other dependent products, or the marketing machine, or much of anything. Further, in a company with any amount of history behind it, you’ll have established ways of doing things. Often established norms have champion employees who invented or inherited ownership of the concept at hand, and changing those norms is not a simple process.

Introducing change and a breath of fresh air to the way things are done can be an uphill battle. Fostering cross-division collaboration takes time (years, not days), and digging yourself out of a hole takes considerable investment of both time and money. Working with and against champions of outdated norms can take forever, but the good news is that there are a lot of very bright engineers on your team, some of the OCD variety, and some of the ZEN persuasion. Good engineers have an innate “moral/ethical/analytical” compass that guides them towards making things better and more efficient. Sometimes all you need for positive change is to take a little time or freedom to think about the bigger picture goal and find a different angle of attack.