A project is usually structured into a number of components (or we can think of them as smaller sub-projects), which are then fitted together into the final result like pieces of a puzzle. This “divide and conquer” technique works very well for most projects and not only those in realm of computers and software development.

If there were no copilot then the client would have to design the flow of the project, divide it into manageable pieces, manage the progress of all the pieces, monitor forums needed to communicate with the developers, deal with technical issues that arise, and in fact just have one fat headache. Thus a copilot allows the client to macro-manage the project instead of micro-managing it.

Also think about it this way. The copilot is monitoring the forums, working out solutions, gauging progress, delivering status reports. And all this while the client could very well be sleeping!

The core of the copilot process is the idea of delegation. The client is delegating all the nitty-gritty aspects of the work to the copilot, similar to the way that an airplane pilot is able to delegate many piloting tasks to the copilot.

The most important advantages to a copilot can be itemized as follows:

  • You would have to deal with a single person when it comes to communication about the progress and any issues within the project.
  • The communication would be high level since the copilot would be something of a layer above the developers, thus removing the details of how to achieve specific technical goals. This is great since the work would be at “macro” level rather than “micro” level.

If the project is large and there are many pieces, the client would hire a couple copilots and this allows for the scaling of the project. The limitation is that there can only be one copilot per component.