Skip to main content

Disconnect between Management and Programmers

One of the biggest reasons why attrition is high is due to the disconnect between the management and the programmers. The reason for this disconnect is very inherent in the type of work that each one does and there is a clash of interests. Some of them are
  • The goal of the management would be to complete the project within the shortest possible budget which means ultimately in the shortest possible time. The goal of the programmer is to do the project in the best possible manner and this may mean multiple iterations before he gets it right. This need not necessarily mean that it will be done in the shortest possible time.
  • Management likes to have a clear understanding of the progress of the project and how long more it takes to complete a particular job so that they can keep everyone informed about the progress and also keep in check the escalating cost of the project. But software projects due to their inherent qualities are tough to estimate accurately and there are problems that may be resolved in a couple of minutes or may take days to be resolved. Management never seems to understand this and does not accept this as an answer.
  • Due to the technical nature of what is being managed many project managers are not technically adept at understanding what is happening. So there is a distrust between the management and the developers on issues being reported and estimates that are given. I have had questions like why would it take 1 day to just move this field little to the left on the screen. They don't understand the fact that the entire layout will have to be changed if we do that and we then have to test the page in 3 different browsers to make sure the change did not effect any of the other parts of the layout.
  • Good developers think in binary - it is either right or wrong. Management is not binary - there are a lot of shades of gray around everything in management. There are unknowns that need to be managed. There are risks to be contained.
  • Developers need to be handled carefully. They don't like to be told any other way than what they believe in unless proven that their thought process is wrong. Management finds it very hard to come up with arguments against developer wishes due to the fact that they are not technically adept.

In my experience I have found two cases where management and developers have the biggest disconnect and they are

  • Managers who have come from other industries or managers who have just done an MBA and think that they can manage the cost and people of a technical project. This kind of manager in most cases never works out. The reason is because they do not understand the nature of the work and they cannot empathise with the difficulties that their developers are facing and can't think alternative solutions when they are stuck. Developers feel that they are doing all the work in this case as the manager has to come to them for everything such as talking to the client on technical issues, estimates, plans, status reports and so on. So developers quickly ask why do I need a manager when I am doing all of this.
  • Very good technical people who are pushed into management just because they delivered on some very difficult assignments and have gained the trust of the top management. Many of these programmers do not know a thing about man management or external communication. The reason is because software development is an introverted role. You program alone, you think alone, you work many a time all alone for many days. This kind of manager also tends to start doing things himself ignoring the interests of the team.

So one might ask what is the solution. The only solution to this problem is to identify managers among the people you already have. Leadership qualities show in many ways - the way they organize events in the team, help other developers with their work, how they keep their tasks in an organized manner. These developers who have a methodical way of managing things that they are doing are the right people for management. They then need to be slowly groomed into the role by starting off with handling one person and then slowly increasing the strength of the team and the number of projects that they handle. In all the other industries mostly manufacturing you hear about how someone from the shop floor grew up to get into the top management of the company - why don't we hear the same in the software industry. Unless you clearly understand what you are managing you can never really manage it. So you need people who have done development and testing to play a management role.


Vidhyashankar K said…
this would be applicable for any line of work. A line manager should ideally come up or be promoted after having done a few years of hands-on work. The domain expertise and and understanding of team dynamics is what earns him/her respect from all around.

An MBA without domain experience would just be fishing in the dark and hoping that the management techniques can be suited instead of adopting what is already there.

Popular posts from this blog

Online Encumbrance Certificate in Andhra Pradesh

You can get an encumbrance certificate online in AP now. In order to get it you have to perform the following steps. Go to the website Click on Citizen Services -> encumbrance -> Search Click on Yes in the screen that appears Fill in the entries that appear in the search screen. You will have to get quite a few details in so it will help to have a copy of the registration document available with you. Once you finish entering all the details click on Submit. It will then go to a new page with the list of items that matched the search displayed. Click on the check box of the list of encumbrance certificates that are needed and click on submit. This will open a new popup window with the encumbrance certificate. You can then print this certificate. What is this useful for Anyone buying new property can go and verify the current owners of the property that is shown on this certificate in the column Name of PartiesExecutant(EX)&Claimants(CL) with the copy of

Cricket Grounds in Hyderabad

This is a repost of the article I published on the 10th of Jan, 2008 as I have added a new ground - Lahari Resorts. View Larger Map In this post I will try and update the list of cricket grounds that i know in Hyderabad. The grounds that I have listed till now are MCH Play ground, Ameerpet Francis (Do not have the contact number but go to the ground and ask for him). The charges are Rs. 1100 for the ground. They do not charge for anything more. You get the ground from 9:00 AM to 4:00PM. The ground is small. Welfare Center, Sanath Nagar Dhanraj Babu (+91 9394556356). The charges are Rs. 1100 for the ground. They charge you an additional Rs. 500 for the mat and Rs. 100 for cleaning and drawing lines and stuff. They are supposed to give you the ground from 9:00 AM to 4:00PM but what they do is that they pocket extra money from another team wanting to play and give the ground out to them for the remainder of the day assuming that you won't play for the whole day. So what happened th

Problogger guest post

Today my guest post appeared on . I wrote about 9 Tips to Start Blogging Successfully . Let me give you a bit of a background about where this article originated from. I have been blogging for close to 3 years now but I have been doing it seriously only for the last 2 months. I then analysed what were the things that I should have done in order to have become a successful blogger based on what I have noticed on the ones that have become successful. The final analysis of my study is what I put into that article and it is what I am trying to implement since the last 2 months. Reading the comments it was exhilarating to notice that some of the readers actually thought Darren was writing the post :-). It was also nice to notice that many readers agreed with my analysis and that strengthened my belief that what I have written if followed will work. How did I get to do a guest post on ? A little more than a week ago Darren invited bloggers to do guest pos