From my experience, many software companies are built around
a matrixed organizational structure.
Whereas, a resource reports to one manager for training, associate development,
HR concerns, and other similar items, but is then assigned to a project to
complete a specific set of tasks that is managed by a project manager.
For those who are in general contracting, this may sound
very similar, however there are many inherent problems (at least I believe
there to be) with this reporting structure.
First, let me explain how the process works in general contracting:
In general contracting, subcontractors
are sought to complete specific packets of work. Electrical, carpentry, concrete, etc. These packets of work are managed as part of
the overall project by a project manager.
The workers that complete this work do not directly report to the
project manager, rather, they are an employee of the company who has been
contracted to complete the work.
Although these workers do not report to the project
manager, the contracted company does have specific conditions contained within
their contract that hold them accountable to deliver what they agreed to, when
they agreed to, with the quality they agreed to. To explain further, each
subcontractor who signs a contract to perform a specific SOW, has done so
knowing there are performance metrics that must be met before they can get paid
(money, the driving force to adherence).
Generally, the contract covers the scope to be completed in great
detail. It is generally described
through detailed schematics or drawings, and is accompanied by a requirements
document. This helps determine the “what”
that is to be delivered. The
requirements documentation also covers what specifically will occur to help
adhere to a high level of quality. It
covers specific tests that are to be conducted, inspections that must occur,
and details the materials to be used and the standards they must meet.
The contracts also cover timeline, and the obligations
of the contractors regarding staffing, delivery, and adherence to the direction
of the project manager. In effect, it
gives authority to the project manager to act as the controlling entity of
those workers while assigned to their project, and also allows the project
manager to withhold payment if metrics are not met. What a concept!
For those in other industries who have never experienced
this, you should take note. Within the
matrixed organization, the responsibility falls to project manager asking
associates to complete tasks, and asks to hold them accountable ensuring they
are done on-time, at or under budget, and with a high level of quality. However, if this does not occur, and without
direct authority to offer repercussions, then the project manager can be left
feeling powerless.
The theory behind a matrixed organization is that if a
resource fails or has a performance issue, this issue is then brought to the person’s
direct manager, who can then work to rectify the issue with that
individual. I know this seems like it
may work, and some organizations may have disciplinary actions in place that
stipulate what happens for specific failures of an associate, but would argue
many do not. This leaves associates in
the driver’s seat and can breed a lack of accountability and performance.
If this is true, then how do you elicit compliance and accountability
with these resources? Different organizations have different methodologies to control
these performance issues, but why over-complicate it? General contracting (and consulting in
general, because that is what general contracting is; a bunch of consultants
hired to complete a project) offers a great case study as to the effectiveness
of how to hold groups accountable for the completion of work within a
project.
As a project manager within a matrixed organization, try the
general contracting approach. Develop
the specific deliverables, requirements for those deliverables, quality
standards they will adhere to, and the timeline for delivery. Make this part of a contract the resource enters
into for your project, and (since you still don’t have the authority to inflict
repercussions for poor performance) offer an incentive to that associate for
each metric they hit.
I recently created a similar incentive program for a large
project I am currently managing to help drive the completion of a large
development effort. Not only did we
complete development on time, but we completed it under budget…by 40%. The work was also delivered with a high level
of quality, because the incentive program only paid out to the associates if
they completed the work not just on-time or early and below estimate, but it
also had to receive a high level quality rating from the inspectors of the
work.
This is a lengthy topic that could be approached in many
directions, however until matrixed organizations learn they can operate as
general contractors internally, regarding how they manage resources, we must
figure out ways to traverse the leaderless Army.