Thursday, January 24, 2008

Fingerprint of a technical leader

Technical leaders are an endangered tribe. As engineers grow in their career, they tend to move more towards management. A few of them decide to become technical leaders, but unfortunately, they end up as an individual contributor or a developer to be a technical leader. Through out my career spanning eight odd years, I have seen a lot of technical leaders; good, bad and ugly.

Maybe, it is too early to be able to talk about technical leadership. However, I would like to compile my learning’s from my wise men.
Technical leaders mean been able to provide solutions to problems, be an evangelist, understand market trends, adapt to them; and ensure that the organization adapts the new technologies in order to grow. The responsibilities of a technical leader would never end. But here are a certain traits that a technical leader should have in order to succeed.

Emotional quotient
Technical leaders have the right to be aggressive, have negative feeling, get disappointed, etc. After all they too are human.
But, they should remember their mood would mean a lot to the engineering fraternity in the organization. Hence, they should learn to control their emotions.
Enthusiasm and aggressive should not translate to been hyperactive and restlessness. It should be presented in the form of been assertive. They should learn the art of convincing people on taking the right steps.
A lot more thought should be put before it gets translated to words and action. The paper work should be ready in the mind before laying it on the table. Bad presentations leave an awful taste in the tongue.
Anger and negative feelings should not be entertained. Instead of getting angry with a person or situation, it is more important to understand the root cause and try to solve it.
There will be many times that a technical leader would face challenges and failure in a single day. This should be interpreted as the methodology of doing the work is not right, and a new way should be thought of.

Mentoring

It is easy to say, that the team members are mature to learn and teaching is not the job of the technical leader. If the technical leader does not want to mentor, then what is his job?
A good technical leader is one, who is a good mentor. He should not only provide solutions, but get his team mates to think; and think out of the box. He should encourage them to try different approaches. He should encourage his team members to learn new technologies and try to provide an opportunity to be independent.
He should develop trust in the team and be approachable. He should not be judgmental and not point out mistakes; but work on enabling the team member realizes it on his own and provide a solution to get rid of the mistakes.
He should understand what the developers want from the architecture and help them see the value of the architecture. He should enable the developers to use the architecture successfully.

Technology Evangelist

A Technical leader should promote technologies. This may be, officially or unofficially within and outside the company. He should promote new technologies and thoughts through talks, articles, blogging, user demonstrations, recorded demonstrations, or the creation of sample projects.
He needs to keep himself informed of the latest and emerging technologies and evaluate them critically. He should provide fodder to the mind. He should understand and lead the way in promoting technologies and good practices that will enable life to be simpler.

The technical leader should develop an In-depth understanding of the domain and pertinent technologies. He should understand what technical issues are the key to success. He should develop methodologies that work best for him.
A non creative mind and a non investigative cannot be a technical evangelist. Practicality helps. There are a thousand things that are quite alluring; but one needs to be pragmatic while taking decisions and achieving targets.

Always remember, Everything is possible*

* Conditions apply

Business

Technology does not drive business, business drives technology.
One needs to understand the organizations business strategy and direct energies towards that direction. One needs to understand the overall business strategy and translate it into a business vision.
Complementarity, Technology leaders need to understand the market and influence the organizations business strategy. They should be entrepreneurs and visionaries, who can see what the future holds and build a bridge between the present and the future. They should be able to communicate their vision to the required stakeholders. This requires a specialized skill as one needs to understand the organizational structure and communicate in the right terms at each level.


Formalize the communication

Ensure to use formal communication. It will make the job easy. But be careful while using technical phrases. Understand the person first, explain the concept, introduce the formal language and then encourage its usage.

The buck stops here

Remember, that the buck will always stop with the technical leader.

Failure should be accepted gracefully. It means that the solution is wrong. It has nothing to do with the person. Hence instead of pointing fingers (which I personally feel is a cheap thing to do), working towards a solution would help.
A debate with others should be healthy. It is not held to prove a point, but to provide solutions. They should be more open to disagreement and learn.
When a member of the team under performs, it shows upon the failure of mentoring by the technical leadership. A technical leader should understand the team members potential and utilize him appropriately.

Listen first

I have seen many successful technical leaders talk last and leave an imposing thought on the others.
Technical leaders should first listen; to the customers, the delivery manager, the team members, etc. Then understand the problem; separate the problem from the symptom, and then talk of a resolution.

Working the team members

Technical leaders are captains and should lead from the front. But they are not heroes. They need to work as captains. He needs to create heroes. Technical leaders should know how to use the team members to their potential and provide challenges to him. He should be able to take quick and critical decisions. He should understand the common goal and build teams around the common goal.
A Technical lead should be savvy, charming and motivating. He needs to build trust in all levels of the organization structure.

And above all, should be a deluge of passion and dedication towards the common cause.