Yes, you need a technical lead. No, it's not optional.

A little over a year ago I finished a contract on a project still in flow. I took two people with me into a meeting with the project sponsor to "introduce my replacement". The sponsor looked quizzically at the three of us and asked "so which of you is actually replacing Mia?" The answer was both: one as the project manager and the other as the technical lead.

Unfortunately, this situation is not isolated. Within the last six years I've stepped into three significant development projects where the lack of a technical lead has had a huge impact, quantifiable in the 6 figures, on the project constraints and product quality. And there are several others I've not been directly involved with or of a smaller scale which have suffered exactly the same.

All of these projects have had a plethora of capable technicians, architects and advisors so technical capability wasn't the core issue. It has always been about a single person with authority to make technical decisions on behalf of the organisation, someone to advise the project manager and steering board, someone to review the technical documents, set the standards and coordinate the activities of the technical team members. If we were building a house instead of software or infrastructure, this would be the foreman or site manager.

Separate the project manager and technical lead roles

Whilst there are a number of technical project managers in the market finding one with the right background as well as all the necessary project management skills can be difficult, so it's generally advisable to identify the need for a technical lead early in resourcing and budgetting processes. Additionally, the project manager is responsible for the project triple constraint — time, cost, quality — whereas the technical lead is primarily focussed on the product and the quality of that product. This creates a positive tension which doesn't exist if the same person holds both roles; so if I'd been staying to see the project through I'd have asked for a TL to be assigned or for me to formally take the role and release the project to another manager.

Create capacity to do the job

Whilst technical lead isn't usually a fulltime job, it is essential that if the lead is a team member, they are given the appropriate capacity to undertake this role and they attend project meetings and are present to provide advice when key decisions are being made.

The tech lead is a person

It is never wise to assign the lead role to an organisation, such as one of the suppliers in a multi-vendor arrangement: it should always be a person.

Vendors managing other vendors — unless they are a consortium with contractual ties — is also ill-advised. Vendors are often uncomfortable directing other vendors, particularly if decisions will entail additional costs or project delays, and rightly so. If the project involves multiple vendors, assign an internal technician or contract one in to represent the organisation.

Choosing a technical lead

When selecting a lead, don't necessarily look to the best technician. A sound understanding of all components of the solution is obviously required, but there are two parts to this role: technical and leadership. Often it is the second part which is overlooked. Remembering that other technicians and vendors are able to debate decisions and to carry out spikes to prove or disprove technical theory, the ability to engage these technician or "speak geek" is in fact more important than practical skills, as well as the ability to translate complex topics into chunks that the business can understand, and intellect to marry technical matters with strategic and business outcomes.

Whomever is the technical lead should carry authority because they are being mandated to make the call on a number of small daily decisions which together can amount to time and cost overruns or technical debt. That level of responsibility requires wide shoulders to carry and not everyone can step into that role easily and certainly not all technicians can set aside their philosophies to give unbiased commentary. I've been fortunate to work with a handful of excellent TLs and certainly notice the difference when a poor choice has been made. And certainly I'd go as far as recommending that if someone is stepping up into this role, they're paid some danger money for the effort.

Trust is critical

If the project manager is the senior officer on the field or the captain on the ship, then the technical lead is effectively the XO, first mate, the sergeant who sees to the day-to-day running of the (technical) troops. The troops need to be able to trust their XO and be able to communicate critical intelligence to them for escalation whilst accepting the chain of command and following orders.

The issues that can result from the absence of this role include:
  • Poor procurement decisions where products or versions of products are selected which do not meet the business need or which require licensing or infrastructural prerequisites that inflate costs during implementation.
  • Poor vendor selection where best practice standards are not evidenced during selection and requirements, design, modelling and testing activities are missed or not to the standard required during development.
  • Loose integration between components that result in security holes often not identified until the product is under security review or in production.
  • Duplication of effort as vendors develop overlapping or overly complex functionality.
  • Product backlog grooming decisions which defer or remove architectural building blocks masked by functional stories, creating technical debt.
  • Vendors making significant architectural changes which aren't apparent to business stakeholders and which open the organisation to technical, security and delivery risks.
  • Technical team members all delivering to different standards or no standards at all.
  • Debates on technical direction taking overly long or resulting in lack of coherent and articulated decisions.
If you are planning an ICT project, ensure you assign the technical lead role. If your project is already underway and appears to be drifting then maybe you need a technical lead or you need to give your TL authority to make decisions and kick ass.
Share on Google Plus
    Blogger Comment
    Facebook Comment

0 comments:

Post a Comment