I was a manager and then executive in IBM software product development from the late ‘60’s through the early ‘90’s. The change in IBM’s organizational culture over that period was dramatic. During the ‘60’s, IBM embarked on a international, multi-product development effort that resulted in the System/360 – a product line with several new software operating systems and at least 8 different hardware systems along with a new line of peripherals. The development of these products spanned the globe and took place in more than 30 groups in approximately 15 different locations from Europe to North America to Japan. There were countless interdependencies among these groups and, as might be expected, rivalries and conflicting priorities among them. But a few, relatively small, central groups in upstate New York were successful in managing the interfaces and interdependencies between the many components of the various hardware and software systems, the schedules and the budgets.
Bob O. Evans was the overall executive in charge of development in those days. He was a man of impeccable integrity – his word was his bond, and he insisted on the same kind of behavior throughout his organizations. Failing to give your word to provide a necessary component on schedule was unacceptable. Not honoring a commitment was inexcusable. The System 360 project was sometimes referred to as a “bet-your-company” effort, and its success set the growth path for IBM for the next 25 years.
A few years later, in the early ‘70’s, when Evans was the president of the product development division, I managed the creation of the first version of the MVS operating system which was, up to that point, the largest single software project IBM had ever attempted. Twenty different groups in 12 locations were involved – a total of nearly 3,000 people at its peak. Each of the groups reported to geographic executives that often had other conflicting priorities – their own pet projects, non-software products that they were also responsible for, budget and headcount constraints, and so on. Even so, it all worked.