As I take a saunter in the technology landscape, I get to look at the inner workings of many software juggernauts - gigantic companies with multiple products and support for a myriad lines of business. I find them all exhibiting similar traits as they transition from a small company with a focussed line of business to a giant. So I thought I would collate these observations together into a blog post. These are random, quirky, half baked, arbitrary, part inside and part outside and prejudiced based on my own limited perspicacious abilities.
Bureaucracy & Process Constipation
As a company grows it becomes a breeding ground of bureaucracy, politics and nepotism. If you are desirous of seeing the most pathetic thing in the world, all you have to do is to take one passing look at geeks as they metamorphose into fledgling politicians. Anything more than a passing look is not for the faint of heart. You see the erstwhile programmers and road warriors ossify into solid walls that act as barriers to any kind of innovation. Suddenly, you see insistence on compliance to hierarchy. Process and protocol become the ubiquitous weapons to impose authority - an authority that rests on dubious foundations and hence needs all the abetment that it can get. The interesting phenomenon is that as processes multiply, so do ways to subvert them!! With the passage of time, it would become evident that to properly understand this process ( and to work around it) you would need to almost qualify to be a lawyer. The more bylaws and precedents you know, the better you emerge as a doer in this new behemoth. Thus this heaviness of process breeds a certain kind of manager who is extremely devious and builds relationships aimed at "working around" the process. This inevitably is just a step away from empire building. This has a deleterious effect on the morale of new employees. All their cumulative years of experience suddenly seem to goto naught. They need to learn the ropes all over again before they can exhibit even a semblance of productivity. Depending on their proclivities, the new employees either end up adding to the number of devious managers or quit in disgust! No matter what happens, innovation takes a big beating. This is incredibly sad since most tech companies become big due to their abilities to thing out of the box to begin with.
Might is Right
So how does this newly created behemoth with a fast declining predilection towards innovation cope up with competition? The easiest way to do this is to buy out competitors or to beat them up. Like a typical "nuevo rich", the company thinks that anything can be acquired if the price is right. The only problem is that with the deteriorating ability to innovate, the company can only put up a formidable front with its money not with its innovation.
"Invented Here" Syndrome
Most big companies suffer from the syndrome of re-inventing the wheel a million times. It is not enough that someone has come up with a ground breaking innovation. We need to do it all over again. In extenuation of this credo, it is asserted that re-using the invention of others would lead to future problems such as IP rights infringement, potential for lawsuits, security and countless other excuses. All of a sudden, our behemoth becomes a world onto itself. It uses its own tools, comes up with its own standards etc. A software giant might pride itself on its community friendly ways. It might state that it has open sourced its standards for others to emulate. But the key is that the standards are "invented here". It finds it hard to join any kind of open consortium which would arrive at these standards. It would instead prefer to be the one that comes up with the standards which are then bequeathed to the whole world for the purportedly noble cause of openness in developing software.
I need to do it all...
Look at any giant company. You would find that they don't restrict their vision to one business. They need to be everywhere. They need to have their own operating systems, browsers, application servers, databases and possibly their own version of sliced bread. You can do it all if you have the money but doing it all well is a different matter altogether. Even by purchasing great programmers and founders of innovative companies, you would still not be able to make it happen. You can purchase people not passion.
Walking the boundary between Love and Hate..
A big technology company straddles the boundary between love and hate. Some people love them to distraction. Others can't just stand them. Some can't stand them because they consider them as bullies. The others are plain jealous - probably because their own business did not make it or because they cant stand powerful companies. The "bully theory" has a lot of takers since huge companies - knowingly or otherwise - influence the lives of millions of people. Consider for instance, the small website owner whose company does not show in a web search because the search engine changed its algorithm. It probably is not the intention of the search engine to hurt the small business. But it happened nevertheless causing possibly considerable hardship (or even disaster) to the small business owner.
The Reasons - Why does it happen?
My theory is that as a company grows, a few things happen which lead to the aforementioned problems:
Uniformity of Organizational Structure & Process Methodology
The company realizes that it has to leverage knowledge/processes/organizational structures across groups. To an extent, this is the appropriate thing to do since we do want to foster a similar message to different groups and promote a quick ability for people to transition from one group to the other. The trouble is that the same square peg gets pushed into every kind of hole irrespective of its shape or dimension. For instance, consider the problem of having a uniform organizational structure. Different types of organizational structures serve different needs. For instance, a giant product like an operating system might have to be engineered like an assembly line. The different steps in the process might have a lot of semantic similarities to their manufacturing counterparts. Here people are looking more for stability and compatibility rather than drastic innovations. So the structure that would serve the engineering of an operating system might be more tweaked towards gating the release through a ton of quality benchmarks. There might be a series of program managers, security managers, operations managers and the like to take care of various aspects of this gating. The process followed might come very close to the waterfall model. This same process methodology along with the same kind of organizational hierarchy, might prove to be counter productive, if utilized for a web application with a very strong requirement for agility. Blind insistence of using the same kind of processes or structures across the organization is a major problem in big companies.
A Cultural Microcosm
As a company grows, I notice an increased trend that becomes pervasive in its culture of promoting its own employees to higher positions rather than recruit people from the outside. This strategy is designed to reward those who "stuck it out" in the company rather than look for more (possibly) lucrative pastures outside. Now the people who have got distilled to reach the top are the ones who imbibed the company's culture the most. Hence this tendency of the company translates to a huge pervasive attitude towards fostering its own culture and removing any outside influences. This further insulates the company culture and demarcates it against the outside culture. So if you walk inside to a big company one of the hallmarks would be that it becomes a microcosm leading its own existence distinct and disparate from the one outside. A big company almost becomes a mini country in its own right.