Wednesday, December 17, 2008

Chief Engineer

Without a role like Toyota's Chief Engineer, direction and leadership in software development is often as coordinated as a three-legged race - if you're lucky. Much software product development leadership is a four- or five-legged entrant into a market race that is starting to see leaner, better-coordinated competition.

Consider the responsibilities of a Chief Engineer at Toyota*:
  • Voice of the customer
  • Customer-defined value
  • Product concept
  • Program objectives
  • Architecture
  • Performance
  • Product character
  • Product objectives
  • Vision for all functional program teams
  • Value targets
  • Product planning
  • Performance targets
  • Project Timing
He is the person responsible for the design, development, and sale of the product. He is the organizational pinnacle and the hub through which authority and ability flow. The CE isn't just an architect or technical lead or just a customer proxy or just a project manager or just process master. He's all of these things and more. He doesn't just pass along customer requirements for the product, he defines them. He doesn't just implement the business's design for the product, he creates it. He's large and in-charge, and he's uniquely and deeply qualified to be so.

Because all of these abilities and authorities are invested in one extremely capable, senior, trusted product development person, the coordination of the various perspectives, values, and vision of a product and its execution don't suffer design-by-committee issues. And because the CE has these many responsibilities and abilities, he's a rare person.

Consider the typical qualities of a Chief Engineer at Toyota*:
  • A visceral feel for what the customer wants
  • Exceptional engineering skills
  • Intuitive yet grounded in facts
  • Innovative yet skeptical of unproven technology
  • Visionary yet practical
  • A hard-driving teacher, motivator, and disciplinarian, yet a patient listener
  • A no-compromise attitude to achieving breakthrough targets
  • An exceptional communicator
  • Always ready to get his or her hands dirty
Part of the reason that we're missing the Chief Engineer in the software business is that we're not growing them. At Toyota it can take 14 to 20 years to cultivate a Chief Engineer. Toyota is structured as a learning organization where fostering a learning culture is a primary business activity. It's a part of the organization's DNA. It's not a fluffy, fleeting, sideline of the business, it is the business - and the organization, process, culture, and methodology dance to its drum.

We're still largely in the software dark ages, celebrating the brute force machismo of a few mutant hero programmers rather than taking continuous improvement as seriously as some of the world's most successful and ethical business.

In software projects we have non-coding architects who live behind closed doors and who are no-longer in-touch with the materials and tools used in building contemporary and innovative products. We have project managers who believe that they can schedule work without having an inherent sense of the technical constraints that engender work plan dependencies. We have technical leads who feel entitled to not deal with customers or to walk in their shoes. We have on-site customers who have been given the right to dictate production sequence without any sense of flow, leveling, and production physics, and the opportunities and advantages to be wrought from them. We have scrum masters who's presence on our teams might be the clearest indicator that things have gone horribly, horribly wrong.

We have fragmentation looking for consolidation. We have tremendous opportunities waiting to be capitalized. We're missing people of great depth and great breadth, with great ability and extensive experience who can wring the medieval organizational behaviors from software projects by guiding them toward engineering excellence and insightful, visionary, and methodical product design and execution.

We have a gaping human resource hole in our software product development organizations through which incredible value continues to evaporate. We need to stand right where we are and accept the antiquated organizational mess that we have created and that we perpetuate by not looking outside of our industry to the exemplars of the meritorious success that continues to elude us.

A single Chief Engineer runs fast, lean, and decisive. He will inevitably out-pace the motley comedy of the architect/project manager/lead tech/on-site customer conglomeration that your lethargic competitor will pit against him.

We need to start today to build the learning organizations and learning cultures that will produce the Chief Engineers that our industry needs. It'll take years to get there, and if we don't start now, it'll take even longer.

* Toyota Product Development System, Morgan and Liker