Having worked in the IT industry for over 20 years, what I have learnt is doing the technical work is the least thing you should know to do well. Any reasonably educated, trained person can do a technical job. What matters most is how one deals with people, how one treats others, how one motivates others and leads by example. I have seen many technical folks who take pride because they got to do some complex programming but when it comes to being challenged, they lose all their cool. They just can’t take being challenged. They also don’t trust others – there is an inherent lack of caring for others. You don’t want to be that. You got to know your stuff and also care about others. The other thing I have noticed is that some of the people (and it is always some here, not generalizing) think knowledge is power. Wrong assumption. In this era of information availability and Google searches, information is no secrect. It is one’s ability to not only understand the information but knowing anyone else can also obtain that information that will give the real edge. You become open about other people with this sort of approach. You don’t think ‘I am irreplacable’; but the humility that comes with being open will serve one better than information alone.