There is a very small belief among IT people.
“As we become more experienced we should concentrate on people management more than technology”.
Let’s try to understand whether it is true or false.
Look at the following conversation between MD, Project Manager and a developer of a company called ABC.
MD: Peter (a Project Manager), we have a very crucial requirement. We have an existing ASP.NET MVC application created for one of our requirements and now we have an urgent requirement. We have to log each and every kind of request raised to the application. We have to store it somewhere, like what request is raised by whom, when and in which sequence. For instance, make a request to view all the customers, update sales information, etc.
PM: How many forms (options) are involved in the system.
GM: Unfortunately more than 1800.
PM: When we have to deliver:
GM: Day after tomorrow.
PM: I don’t believe it’s going to be an easy task. Let me check with developers.
………………. (PM explains situation to developers and convinces them for completing
it)…………….
Developer: Sir, for that, we have to change all our action methods and add logging logic at the end of it.
PM: Action methods!! Sounds good. You guys are the stars of the company. (It’s called Get Work done strategy ;-))
PM used his skills and finally made all developers sit late and made them change each and every function. Finally, everything got completed on time.
Unfortunately, things won’t work out as per expectation. You know why? Because no proper testing. Each and every request handling logic was changed in order to achieve the new requirement.
Testing each and every logic (written prior to incorporating these new changes) was equally important after that.
Reality
In reality, this task would have been easily accomplished with the help of custom action filters in MVC.
Project Manager’s /Team leader’s lack of technical knowledge led him follow the half skilled solution of developers. At least he would have known about action filters.
Conclusion
Team binding, convincing and management is very important and that’s where people management comes into the picture but it won’t replace technical skills. A technically weak person cannot make proper people management decision if he is not good in his field. I believe he should,
- Understand whether solution given by other people (team leaders, developers, etc.) is proper or not?
- When developers get stuck, he should be able to support them.
My one simple sentence is “Only a technical person can be a best people management guy”.
I would like to hear your thoughts about the same….
You can follow me on twitter @SukeshMarla
CodeProject