Saturday, October 6, 2007

AJAX and Bandwidth Savings

One of Solidcore's components is developed using Google Web Toolkit (GWT). GWT was introduced about 2 years ago and allows developers to develop web applications using Java. Though Java was used for server-side development even before its introduction, GWT pioneered the concept of a java-to-javascript compiler that allows developers to develop and debug in Java using their favorite IDE and tools. The compiler is used to convert the code into javascript which can then be deployed on an application server. Click here to know more about GWT and if you've already played with GWT and want to meet the team behind this innovation, you may want to register for this event

Our GWT application is extremely user-friendly and uses AJAX to provide a great experience to the user. I had never imagined that such functionality could be delivered through the web browser! Not only is the user experience better, there are some ancillary benefits like bandwidth savings. By obviating the need for full page refreshes, AJAX helps reduce the amount of traffic. This article uses simple examples and does the math to explain how large-scale web applications can derive significant cost savings. However, the best is yet to come. Our application results in a single javascript file, which together with gwt.js, is nearly 150KB in size. If we could optimize this to fetch the javascript functions on-demand, we could make the startup times faster and further reduce the bandwidth. Here's an excellent article describing this in case you are curious about how this can be done.

Saturday, September 22, 2007

Disruptive Innovation

I have been following Apple's introduction of the iPhone with great interest. The story actually begins with the success of the iPod - a great story of stupendous growth being driven by organic innovation, something we rarely see large companies do. Though the technology and marketing was innovative, the most critical thing that Apple got right was targetting a highly fragmented and underserved market for digital music players.

The success of the iPod helped bolster Apple increase its marketshare in computers, bolster its bottomline and made it an investor favorite. Apple, more than anyone else, probably knew that the gains could not be sustained just by introducing smaller and sometimes crippled versions of the iPod. The introduction of the iPhone gives us a great insight into where Apple is headed over the next decade or so.

Those who have read Clayton Christensen and Michael Raynor's "The Innovator's Solution" will notice many patterns that make the iPhone a disruptive innovation in the classic mould, including the targetting of non-consumption of legal digital music, the innovative approach to licensing music through iTunes, the use of proprietory (interdependent) architecture to get better performance and integration with iTunes. In fact, the last point about how Apple's proprietory and integrated architecture, which was its bane in the PC market, turns into a key strength, is also predicted in the chapter on commoditization.

The authors argue that a proprietory architecture is critical to the success of new products as customers will demand the best performance for their investment in the product. A proprietory or integrated approach will be better optimized to provide better performance than a modular one with components and software from different vendors. However, as the market matures and more entrants join the fray, the marginal improvements in performance or form factor (a la, the iPod mini, nano, micro, pico, etc) will not always lead to better price or margins. The product will eventually become a commodity, with the focus shifting to volume away from high margins.

This phenomenon will slowly shift the balance away from proprietory architectures to modular ones which are better suited for higher volumes. Fortunately for companies like Apple, this is phonomenon is cyclic in nature. As the product becomes a commodity, companies will focus on new markets which play to their strengths. Apple may have found a new market and the right product (iPhone) to do just this. For now, Apple seems to have the Midas touch and if you were thinking of investing in technology, Apple is a stock that I'd highly recommend ...

Saturday, September 8, 2007

Referral based and Skillset based Hiring

Solidcore has been growing rapidly and in the last few months we have more than doubled in size. I have averaged about 2 interviews per week for the last 3 months or so and would like to share my thoughts about how the size of an organization affects its hiring choices.

Until very recently, we could track the lineage of every employee and without exception every one of the earlier hires came to us with stellar references from ex-colleagues, friends or investors. Our hiring process would often start with a resume arriving from one of these sources and following a few rounds of interviews, we'd typically extend offers to the candidate. The quality of the referrals were very high and we managed to recruit top talent this way.

Such an approach meant that all the employees were no farther than 2 degress apart from most of the others, all being part of a small, well-knit silicon valley community. Most of us had startup experience and knew fully well the risks and thrills associated with building companies. Some had already been part of successful startups and others had tried following their dream. Though individual reasons for joining a startup varies, a common and inviolable goal for everyone was to help build a great company through hard-work and perseverance.

This burning ambition and an all stars team have helped us time and again overcome tough situations. Now, we have reached a stage where our growth demands us to fill openings quickly. A booming job market and an immediate need to fill the openings means that we are now open to considering resumes from recruiters and not just the ones that come from internal references. Making this change is part of our transition from being a startup to a larger and more mature company. This does not, however, mean that the hiring process is any less rigorous. We still continue to attract and hire great people.

This phenomenon which forced us to change our processes from a referral based hiring to skillset based hiring is very interesting. Employees are mostly replacable in large organizations. Their hiring processes also reflect this with most open reqs emphasizing specific skillsets and experience. The ideal candidate is one who is seen as good fit for the team and company culture. Leadership qualities are never considered for entry level and sub-senior management positions. Under such circustances, even exceptional employees find it difficult to progress up the corporate ladder. The impatient leave for smaller companies and many others get on the MBA bandwagon.

On the other hand, smaller companies place a premium on leadership skills. I know of a few instances where offers were extended even when there was no open req in the particular business unit. One may think that such behavior borders on fiduciary irresponsibility, but if you consider that one of the biggest assets of startups is its people and the IP they help develop, this approach does not seem illogical. Counterintuitive maybe, but definitely not illogical :)

Does this mean that larger organizations cannot or should not hire leaders? The answer is a categorical no. Leadership at all levels is key to the long term success of any organization. Larger organizations use different mechanisms to find and cultivate leadership in their organizations. Hiring is mostly focused on immediate needs and market needs. The best hires are eventually promoted and groomed for leadership. However, the pace at which this happens in a large organization makes one feel that leadership is not an immediate concern. Does this make you think of moving to a smaller organization? Do check out our open positions at http://solidcore.com/company/careers.html

Saturday, June 30, 2007

Ski Rental and Value Propositions

Most of us (esp. in the US) would have rented items like Skis, Camping Gear, etc. from time to time. For the occasional skier or camper, this is an obvious choice. However, the more serious enthusiasts have an interesting problem - to rent or to buy? This is a well-researched topic and the math proves conclusively that the optimal strategy involves renting until the aggregate rental cost equals the cost of the ski equipment.

Now consider the following -

1. I bought a pair of roller-blades after taking my first lesson while attending Grad school. Over the course of a couple of years, I became a very proficient skater. Much like the researchers predict in their paper, I had a major accident that required 18 stitches over my left eye. Purchasing the rollerblades outright gave me the option to practice at short notice in my free time (an extremely valuable commodity in grad school) and is a decision that paid off well. Once you master rollerblading, many other sports like Skiing and Ice-skating are easy to learn and enjoy.

2. Taking a similar approach, I bought a cable modem for $200 in 2000 when I moved to the Bay Area. Comcast was renting these modems for approximately $10 a month and I reckoned that I'd my investment would pay for itself in less than two years. However, within a few months of my buying the modem, Comcast reduced the rental price to a ridiculous $2 a month, making me kick myself. A good 6 years after buying the modem, I still haven't broken even!

These examples illustrate why
the ski rental algorithm is great for the average case. Given the amount of skating that I did, I'd not have spent much more had I followed this approach while buying my rollerblades. With the Cable modem, I'd definitely have freed up precious resources for investment elsewhere.

Now, step back a bit and consider a startup (with scarce resources). Following the ski rental algorithm gives the startup great leverage in conserving its resources and investing in the most critical areas. At an early stage, leasing desktops from Dell/HP helps the startup free up capital to invest more on the product. Capital Expenditure can be done later after the product has stabilized and the revenue stream starts picking up.

This idea is also the cornerstone of many SaaS offerings. What do you think is the primary value proposition of Salesforce.com? I'd argue that the primary value proposition of Salesforce.com is not CRM and its software, but the lower cost of ownership of such a solution. As I've noted in my earlier posts, comparable solutions from Siebel, SAP and Peoplesoft were very expensive to procure and had a very high TCO. Salesforce.com's innovation lie not in providing a hosted service, but in identifying that the Ski Rental algorithm is such a no-brainer.

Wednesday, June 20, 2007

Cars, Planes and the Airline Industry

One of the most popular keywords in the software industry today is to Software as a Service (SaaS), popularized by Salesforce.com’s Marc Benioff. Marc has done a tremendous job positioning his company and its eponymous website as an inexpensive and indispensable tool for many small and medium businesses. However, will this trend catch on? Is there sufficient play in the market for more SaaS vendors and is Salesforce.com that got lucky?

There is a close parallel between the various software segments – consumer software, enterprise software and SaaS with the transportation industry – car manufacturers, plane manufacturers and airlines. Drawing out the analogy on some aspects brings out the challenges faced by each of these segments and clearly shows that the SaaS vendors have a tough challenge ahead.

Customer Expectation - customers expect good quality, but also understand that there will be the occasional failure. Failure of parts in a car is relatively inexpensive to fix, even if the manufacturers have to do a mass recall. However, airlines expect a very high quality product when they buy a plane and will not buy even if a few parts have quality issues. An airline must ensure high reliability of their planes and also offer great in-flight service in order to stay in business. Even though the quality of software from enterprise vendors is often not as high as their customers would like, the expectation of quality in a SaaS tool is the highest – the software must provide Quality of Service guarantees and also be highly available.

Lifespan - The average maximum lifespan of cars is around 10 years, of planes 30+ years. Typically, we expect airlines to outlive various airplane models by adapting newer technologies. It is not that consumer or enterprise software companies have failed to build a sustainable business, but a SaaS vendor will be required to adapt more quickly to the massive technological shifts that occur so frequently in our industry.

Maintenance - car dealers and even unauthorized mechanics can do an oil-change for cars, whereas only well trained engineers with appropriate tools can do so for airplanes. Airline carriers have trained engineers who perform routine maintenance on the planes very frequently (a few thousand miles or so) in order to make sure that the planes are flight-worthy. A SaaS vendor should not only have the best architects and engineers building the product, but also an extremely capable bunch of administrators. Neither consumer nor enterprise software companies have to worry about training or recruiting administrators for their software.

Sales - In the plane market, most deals are big and a win/loss can alter the landscape of the market and profitability of the company. However, a few lost deals do not make a big difference to the pecking order of the car manufacturers provided they do not let it aggravate. The airline industry is the one with the highest volume of business and the lowest margins. The current rate for even sophisticated tools like Salesforce.com is less than $100/month per seat and this is a huge stumbling block for SaaS vendors. Why would they build great software and settle for lower margins, if they could instead sell the software for a much better price?

Market – the car market is flooded by many manufacturers with models for every segment, whereas the airplane market is dominated by fewer players - Boeing, Airbus, Llockheed. Airline carriers are slowly specializing in the international, budget domestic and hi-end domestic markets. Not sure how the SaaS market will shake out and grow, but it is possible that we may have vendors offering custom services to larger organizations with strict SLAs and smaller players that target the mass market. This may already be happening with large IT vendors like EDS, IBM Global Services, Infosys, etc. developing and maintaining custom applications for large clients like GM, GE and others. I’m sure they are already thinking of the next big thing after services and this is an area with a lot of possibilities. The biggest challenge before smaller players like Salesforce.com is to sell to the larger enterprises, as they cannot risk selling to only small and medium businesses.

The bottom-line is that very high customer expectation for quality and the general dynamics of the market make it very difficult for small startups to offer Software as a Service and build a sustainable business. Its probably for the best, because the few that do so, will have a clear and distinguished value proposition. As a corollary, I would not dream of starting a SaaS startup unless I have a clear and distinguished value proposition.

Saturday, May 19, 2007

Challenges in Building Products

I just completed 7 years in the software industry in various roles - Implementation Engineer, Technology Evangelist, Software Engineer, Architect and Product Manager. In these roles, I have worked on software projects of varying complexity, maturity and in teams as small as 3 Engineers and in bigger ones (40 Engineers). It is interesting to look at some of the major challenges faced by these products at different stages in their life-cycle. To set the correct context, I must add that I have worked in the Enterprise Software space for most of my career.

Mature Products
: I started off as a Research Assistant in the Condor team and my first big project was to understand the requirements of the UW Hi-Energy Particle Physics (HEP) computer simulations and modify our Grid Computing software - Condor - to support the HEP simulations. Condor is one of the longest running university research projects and even in 2000 it was very mature with excellent documentation, user groups and large user base. During my stint with the Condor team, I learned that even mature products may require customizations and also about the importance of having a strong Implementation Engineer or Professional Services Team supporting the implementations and funneling back requirements to the core development team. If you are considering developing Enterprise Software, make sure you factor in travel and support costs of such an Architect or Team. Depending on the maturity of your product, these costs may be as much or even higher than the budget for your core development team.

A disappointing fact about Condor (at least to me), is the fact that it missed many opportunities to move into a mainstream market. Based on my interactions with Prof.Livny, I am nearly certain that he never intended to build a business out of his research project, but the entrepreneur in me rues the missed opportunities :( I must add that I tried mightily to evangelize this product when I worked for Prof.Livny and also when I worked at Optena.

Mainstream and Extremely Successful Products: Tom Siebel built his company and an entire market on his idea of Customer Relationship Management. Granted, he may not have been the first one who thought of this, but he brought an extremely feature-rich and useful product to this market and through aggressive sales and acquisitions built Siebel Systems into a well-known ISV in the space. Though I joined Siebel Systems only in 2002, I was friends with many of the original architects who started with Tom and my observations are based on my conversations with them and also my own experience working at Siebel Systems from 2002-04. Siebel's biggest challenges (in the post-2000 era) were -
  • Managing Growth and Product Quality- After a spectacular IPO, Siebel lost the wind in its sails following the 2000 bubble burst. The HR team definitely did not do Siebel any good by hiring (and firing) in what seemed to me to be a very random pattern of behavior. Maybe it was the fear of a wardrobe malfunction, but when Siebel made the switch from a Client-Server model to an Internet based architecture by introducing version 7 of its product, Ms.Quality Under-appreciated never attended the launch party (or any other parties - maybe I should say funerals - thereafter). I have heard horror stories of how Siebel 7 would not even install off of the CD that was shipped.
  • Implementation Costs and ROI - Bad Product Quality meant that customers had to hire pricey consultants to install and configure the software. It was not uncommon to hear about a customer spending $5 million in software acquisition and a further $15 million in deployment. This is just plain wrong - no matter, how good a product you have, if your implementation costs are not less than 20% of the sticker price of the product, you are going to lose the market - Period.
  • Lack of Faith - It is not uncommon for even the largest and most innovative companies (or individuals) to go through a bad patch, but the differentiator of winners and losers is often their perseverance and ability to work through a bad patch. It is in this aspect that Siebel Systems failed misearbly. When Siebel realized that hosted CRM vendors like Netsuite and Salesforce were drumming up a vigorous business, it decided to reintroduce its hosted offering (it may interest you to know that Siebel was one of the first players in the hosted CRM space with its www.sales.com offering, which it withdrew because of lack of business!). It also brought in a senior IBM executive - Mike Lawry - as the CEO to correct course and build new businesses. However, it never had complete faith in these (as well as many other) initiatives and ended up being swallowed by Oracle. In the same period, Salesforce.com has seen a steady increase in its market-cap and has hired many of the ex-Siebel architects and engineers.
New Products/Company: This is one of the most painful chapters in my career. I quit Siebel and joined Optena as the first member of its engineer team. Optena's vision was to commercialize Condor based technology. Based on this experience, I now know about the following pitfalls while starting a company -
  • Beachhead Customer - The importance of the beachhead customer, who is willing to experiment with a very new and potentially immature technology is extremely important to a product's success. In the absence of such a customer, the product gets built in a vacuum and there is no way of prioritizing or even verifying whether the features are useful or not. Insisting beachhead customers to pay you may not be the best option if you realize the risk they are taking by using an immature product in production. If they are willing to pay, only charge them the fair-market price for the value and not what you expect your product to sell for 2-3 years down the line when it has established itself.
  • Innovation - Small companies must keep innovating, even if the beachhead customer wants only a few minor feature enhancements to the first version of the product. If you focus yourself on the enhancements required by the first few customers and stop your innovations, you'll end being a one-trick pony and will never be able to take the product to the next level in its lifecycle.
  • Hiring Successful Entrepreneurs - Optena lost its funding just when it was about to get a couple of major deals. The VCs realized that even with the new deals, Optena would never be a billion dollar company (this was shortly after Google's IPO). I daresay the VCs would have continued their funding if we had even one person on our rolls who had a successful trackrecord in building companies.
The interesting aspect here is that only one of the issues here was a real product problem with the others being strategic mistakes made by us.

Emerging Products: Our biggest challenge at Solidcore is ....

Sorry, I cannot talk about my role or the product at Solidcore as we are in an intensely competitive market that is growing rapidly. I promise to keep you posted on our progress.


Thursday, May 3, 2007

How Fedex became 'The Verb'

Article contributed by Anjana Rajamani.

I was hoping that a quick look at their respective websites to check out their product offerings, compare service levels and a few random checks for customer experiences, would provide me with clear, obvious reasons as to how FedEx ‘out marketed’ its centuries old competitors - UPS and USPS. Has FedEx out marketed its rivals? Clearly, becoming a $34 billion company in a short span of 35 years, FedEx has grown much faster than its rivals UPS (revenue $43 billion) and USPS (revenue $69 billion) and made their revenues look smallish relative to their century (ies) old existence.


Beyond figures, FedEx has done much more than capturing a sizable portion of the market from its rivals – it has captured a significant portion of ‘mind share’. FedEx has become eponymous for ‘anything that you can’t deliver in person’ as Xerox did for photocopying. FedEx is recognized (or very close to being so) for what it has sought to identify itself as – in its own words – “absolutely, positively” dedication to providing specialized solutions for every shipping, information and global trade. Clearly, this is not any different from what any other logistics company would try to do and in most cases, already do so to a fair extent. Why then has FedEx enjoyed such an unprecedented level of success? How has it beaten its more established rivals to become ‘the verb’?


Looking for answers, I realized that there are few things more difficult than explaining success stories. While in the cases of failure, it is often possible to identify and attribute a cause, or at best a few causes which paved way for the ultimate fate, so is not case with success. Even the staunchest of non believers in ‘destiny’ would agree that success is a phenomenon, which is too big to be attributed solely to our actions and rather rare to result from circumstances alone. Success requires a rare collusion of actions with propitious external factors, which provide the right trajectory. The reasons for success are hence not as linear and easy to identify as those for failure. With this disclaimer I set about in my attempt to explain the FedEx success story.


To start with, there are 3 broad parameters on which a business such as this can be evaluated – Product offering, Service level & Customer Experience. These parameters should explain a significant part of the FedEx success story, though the reasons for success may not limited to these. Given this, here is my take on how these 3 - should I call ‘brands’ stand on each of these –


Service level in the business of logistics and delivery, quite obviously includes pricing, compliance to strict timelines, accuracy of delivery, ability to limit damages to the consignment, movement tracking – has become fairly basic hygiene factor and hardly remains a differentiator in this line of business. After all, all of them have user friendly interfaces that provide you with options to open a customer account and manage and track all your interactions with them, promise delivery with in a fixed number of working days depending on the location, allow you to track their movement and even allow you to choose your kind of packaging, without much differences in their pricing! With a service level below these, one would hardly be in the race and these being major players one need not expect a significant deviation in their service levels (of course, providing for the one of cases).


Customer Experience, which includes everything right from the way the personnel at the office speaks to you to how the delivery man handles your package to how soon your phone gets picked up while you are trying to log a complaint, is the most diffused of the three parameters. There can be no one set of people whose experiences will be representative of the performance of a given brand. In my limited research, I have come across almost an equal number of positive and not – so – positive for each of these service providers. Given that customer experience is hard to measure, it is best to allow for a normal distribution of customer experience, assuming that few providers are more positively skewed than others.


Product offering – finally, here is the one where I see some significant difference between FedEx and its rivals. Well, what is the product offering in this case? – After all, we are talking about taking a package (at the minimum) from one and delivering it to another! By product offering, I mean the number of options a customer, be it an individual, a small business or corporation has in sending his or her consignment.


Product offering depends on the way one defines different group of customers. Most logistics providers tend to group their customers into the usual categories – Individuals, Small Businesses and Corporations. How significant is this classification? Well, it decides everything from how your consignment gets sent to when it gets delivered. While it is true that the needs of these broad groups of customers are similar, they need not always be so. Companies like FedEx seem to cater to the existence of sub-classes of customers within each of these groups.


FedEx allows the customer to decide how he needs his consignment to be sent depending upon his need for expediency and how much he is willing to pay. For example, all consignment to Canada from the US need not be sent over ground, a customer can air freight it if he wants it so. Ultimately, the customer pays for having the package delivered the way he wants it to be.


However, in the case of UPS and USPS business proceeds as per standard definitions. Their operational convenience seems to come at the cost of customer options. As long as you fall into one of the 3 silos (Individual / Small Business / Corporation), they know what is best for you. All packages in a given customer category receive the same treatment irrespective of the need for expediency or any other such demands a customer might have and is willing to pay for!


Rather than providing very few options and getting the customer to pay for what the logistics provider chooses, by not taking over all the decisions from the customer, FedEx makes the customer pay for services he / she chooses. Provision of such options, may seem too insignificant to contribute to the growth in popularity of FedEx, but in the long run it does contribute to the view that FedEx is more customer friendly than its rivals.


This is a great example of how a startup, through good product differentiation, was able to win significant mindshare and grow faster than older and bigger competitors. Now, does that sound like Google vs Microsoft?