Friday, March 28, 2008

Leading Indicators-based Product Management

Carly Fiorina, the former CEO of HP, said in one of her speeches, I paraphrase, “The companies that survive in long term are managed and measured through leading indicators versus lagging indicators. A company’s quarterly results denote a lagging indicator because they represent the past decisions”.

I believe that Carly’s aforementioned quote is a very important principle on how one would manage a team, a company or a product. At work, I lead a large team to develop, maintain and continuously improve a large software-as-a-service product. And everyday, my team and I collectively make a lot of decisions on the product’s direction and day-to-day operations. However at the end of every day, I always think hard as did we make the right decisions that day? Did we make sure that our decisions will work in both short- and long-term? Did we make sure people understood how those decisions will be carried out? Would our customers like the changes made through the decisions? Would our employees accept that change that was associated with our decisions? Would we achieve the product vision?

After understanding Carly’s approach on leading indicators-based management, I have concluded that as far as our decisions incorporate the leading indicators , we will be fine for the most of them. Personally, I always try to approach all product decision discussions with the following leading indicators in my mind.

Follow the Users

This leading indicator has been proven again and again, and the consumerization of the technology is taking this to a new level. If the product features are not continuously developed and enhanced based on the users’ feedback, the product will fail. The SaaS model and the Blogosphere have made the users’ feedback based development very fast and highly effective. Do we really need old user group meetings and conferences? I don’t think so. I believe the Blogosphere can provide instant feedback and SaaS model has enabled instant features deployment and beta testing.

Satisfy the Existing Users

This leading indicator has been proven more than once even at a very large scales. A classic example is AOL. At the start of the Internet, the AOL portal was the main hub of the early Internet users. Today, you go ask school kids about AOL – I can guarantee 95% responses as “what is AOL?” In contrast, the word Google would have the opposite response. So why did AOL lose the brand when it had a head start of almost five years against Google? Simple answer: They didn’t satisfy the users and with a single click, the users switched to the better websites.

Prepare for the Growth

In February 2008, Yahoo! Live was launched the live videos - well ahead of the video industry leader, YouTube, which will release the live video sometime later this year. However, the Yahoo! Live service went down the first day of its go live day and got a bad reputation from the start. What a colossal mistake! Yahoo! simply failed to understand the contemporary users, who don’t have any tolerance for a product failure until they really like the product. Yes, the occasional outages are tolerated, but only after the users like the product, not before they can even get to use it. So, this indicator requires us to always plan the infrastructure for growth. If you cannot sustain a world wide go live, stage it by country. If the country’s population is too much to contain, do a limited invitations-based beta. As an example, though, I cannot confirm this; the Gmail product entered the market through invitation-only approach. I would speculate the creation of a scalable product infrastructure could be one reason behind the invitations-only approach.

Sunday, March 9, 2008

The Consumerization of Enterprise IT

Nicholas Carr, a disruptive technology author, writes in his latest book, The Big Switch, “A hundred years ago, companies stopped generating their own power with steam engines and dynamos and plugged into the newly built electric grid. The cheap power pumped out by electric utilities didn’t just change how businesses operate. It set off a chain reaction of economic and social transformations that brought the modern world into existence. Today, a similar revolution is under way. Hooked up to the Internet’s global computing grid, massive information-processing plants have begun pumping data and software code into our homes and businesses. This time, it’s computing that’s turning into a utility. The shift is already remaking the computer industry, bringing new competitors like Google and Salesforce.com to the fore and threatening stalwarts like Microsoft and Dell. But the effects will reach much further. Cheap, utility-supplied computing will ultimately change society as profoundly as cheap electricity did. We can already see the early effects — in the shift of control over media from institutions to individuals, in debates over the value of privacy, in the export of the jobs of knowledge workers, even in the growing concentration of wealth. As information utilities expand, the changes will only broaden, and their pace will only accelerate”.

I could not agree more. This change is very disruptive and will shake things upside down. However, no body would argue of difficulty of challenges that lie ahead of us to make this change in the enterprises. Historically, enterprises have always resisted a change due to a combination of antiquated controlled senior leadership styles, job security fears within the middle management, and a simple resistance to adapt to the new ways among the employees. So, the question is simple: How can we enable our enterprises make this switch? And those of us, who have worked in enterprise projects, know this very well that enterprises’ users love the “custom” solutions. Their “requirements” result into customizations of the off-the-shelf software products or in some cases, development of custom software projects. All of those customizations and custom projects are expensive to develop, are mostly late and over budget, and have a steep maintenance cost – yes that gives job security to the same developers. Consequently, the contemporary enterprises have IT budgets in millions of dollars and are turning to off shore outsourcing to cut the costs.

So, is it simply impossible? Do those enterprises really need to restart? Is the roll out of a new strategy the magic answer? Well, I think, restart is not an option for almost all of the companies. The roll-out of a new strategy is necessary but not sufficient. I believe the answer lies in what pundits are calling “Consumerization of Enterprise IT”. Basically, the same consumer Internet-based technologies that have made us Internet-savvy users will make their way into the enterprises to simplify and standardize the enterprise IT systems. However, from my own experiences, I have witnessed two broad challenges that need to be overcome to move enterprises from the existing customized enterprise IT solutions to the standardized online software solutions.

First one is the features (or lack thereof) and limited configurability (by design) of the online software. In terms of features, I would say it is a function of time when the online enterprise software catches-up with the local enterprise software. I would give it three-five more years based on my own research. However, as it happens with any new technology, some customers will embrace the online software now as it is perfect enough, though not perfect yet. As a result, this will give them a jump start against the competitors later down the road. In contrast, the limited configurability is by design the underlying principle of the online software. Why? We all know from this product world, if a company cannot replicate a product through a standardized model, it won’t make profits and its customers will not get a low price product. Let me illustrate this using an example. Imagine a world without a standardized way to drive a car (gears, dashboard, accelerator, break’s positions etc). If the car industry had not standardized on those standard elements, the cars would still be expensive and less in use as they would have required too much training to drive, almost impossible to switch etc. In the similar fashion through standardization of using the online software for the common processes - HR, Accounting, Procurement, and Contact Center - the customers will reap the benefits over time, and avoid costly upgrades resulting into business disruptions. Of course, the core business processes are exception to this rule. What is an example of a core process? How an Airline determines its ticket price for a particular flight. How a car manufacturer sets-up its robots-based assembly line to manufacture more efficiently etc.

The second challenge to overcome is not about technology or business processes. It is about people. We all know that to make a change in enterprises is like making elephants dance. So, this is where I believe that the proliferation of Web 2.0 based consumer technologies is going to help us. Let me give you an example on this. In circa 2002, the Santa Clara Cricket Club, where I serve as a CTO, had a very manual email-based players’ availability management process. At that time, I would take an initiative and developed a custom Java-based web application to manage players’ availabilities. It was a runaway success. However, over time, the home-grown application started to out-grow itself as I didn’t have much time to update the code and infrastructure with the latest changes and security fixes. Fast forward to 2007, the application was considered antiquated. It didn’t integrate with any portal. It had a steep development cycle for minor change requests. In summary, the application was hindering the Santa Clara Cricket Club’s growth. Fortunately, around this time, the outside world had changed also. We had Google Apps available to us. One weekend, my colleague and I spent few fours configuring Google Apps’ Calendar for our club members. And the next weekend, we moved all of our user accounts to the Google Apps and with a switch of button; we abandoned our old availability application. This was a risky bet. What would happen if the users could not use the standardized calendar-based availability? As it happened, almost everything went smooth. We had user ids and passwords problems but nobody reported any problem using the application. More than hundred users were able to adapt themselves to the Google Calendar without any training. How did that happen? Isn’t that dream for our enterprise applications? Well, it all happened because Google Apps’ calendar was similar to the online calendars that our users were using to manage their own personal calendars. So, our users’ experience of using consumer technologies resulted into a smooth cut-over to the new enterprise app without any hurdles. What was my conclusion from this experiment? The consumerization of the online enterprise software will be the most profound way to overcome the challenges in users’ adoption of the online software over the in-house customized software.