Take the 2-minute tour ×
Programmers Stack Exchange is a question and answer site for professional programmers interested in conceptual questions about software development. It's 100% free, no registration required.

A little background first. I'm a project manager at medium-sized company. I started as a CS major and had a little exposure to programming, but after a few months I knew it's not my path, so I switched over to management. That proved to be a good decision, and after graduating I've worked in software management at various companies (for 5 years now).

Recently, we had a very painful project. It was the worst of the worst, with many mistakes both on our side and on the customers side and just barely ending it without losses. It has led to many frustrating situations, one of which escalated to the point where one of our senior developers left company after a vocal argument with us (the management). This was a red flag for me: I did something terribly wrong. (for the record, the argument was about several mistaken time estimates)

I searched many places for answers and a friend pointed me to this site. There are many questions here about frustrations with management. I can understand that the general bad experiences lead to a general reluctance against "those guys in the suits".

I'm that guy in the suit. It may not look like it, but all I want is a successful project, and with limited resources it takes painful decisions. That's my job. One of the things the aforementioned senior developer complained about was work equipment. Frankly, I had no idea that the computers we had were not suited for working. After this, I asked many programmers and the general consensus was that we need better machines. I fixed that since then, but there was obviously a huge communication gap between me and the programmers. Some of the most brilliant developers are the most shy and silent people. I know that, and it was never a problem during an interview. People are different, and have strengths at different areas.

The case of the underpowered PCs is just one of the many that led me to thinking that there is a communication issue. How can I improve communication with programmers without being intimidating and repetitive?

What I'm hoping is that people don't complain about good things. If you love your workplace and love (or at least like :)) your manager, please tell me about them. What are they doing right? Similarly, if you hate it, please describe in detail why. I'm looking for answers about improving communication because I think that is my problem, but I might be wrong.

share

locked by Yannis Rizos Oct 30 '13 at 10:48

This question exists because it has historical significance, but it is not considered a good, on-topic question for this site, so please do not use it as evidence that you can ask similar questions here. This question and its answers are frozen and cannot be changed. More info: help center.

closed as too broad by Yannis Rizos Oct 30 '13 at 10:48

There are either too many possible answers, or good answers would be too long for this format. Please add details to narrow the answer set or to isolate an issue that can be answered in a few paragraphs.If this question can be reworded to fit the rules in the help center, please edit the question.

45  
Don't you ever take your development out for a team lunch or dinner? We do that at least once per month. Don't you have informal meetings with them, as a team, and individually (at least quarterly)? OTOH, a person managing a team of developers, who has never been a developer himself is in a difficult situation. Because of this, there could be a respect/trust issue. –  Randy Minder Jul 14 '11 at 14:35
97  
Regarding equipment: your team probably costs about $100/hour. If they say they need something, a machine, a book, another monitor, a chair, a desk, a headset, get it. If you do not have authority for these trivial expenditures, expect continued turnover. –  kevin cline Jul 14 '11 at 14:57
22  
My manager takes me out for lunch and pays for it, but he does not dare to ask for my input; instead he talks about how bad his last place of work was. Frankly, perhaps he better not ask because the decisions are being made abroad anyway and those are often stupid ones, IMO. My point: it is not enough to have a 1:1 or take someone out to lunch. One needs to ask straight questions but also demonstrate the ability to make reasonable changes. Without that 1:1 is useless. –  Job Jul 14 '11 at 16:20
27  
This is the core of your problems IMHO...If your first red flag is a Senior Developer leaving the company after a confrontational meeting with management you need to get some new red flags. Ones that work at a finer grain of problem. Talk to the other devs solo, start with one you have the best relationship with. Ask them Why he was unhappy, but also ask When they knew he was unhappy enough to think about quitting and how they knew it. Ask how you could have noticed it, what signs they think he gave you that you missed to know it was already that big an issue. You need to see problems first. –  Eric Brown - Cal Jul 14 '11 at 17:23
29  
"How can I improve communication with programmers without being intimidating and repetitive?" Your worry about being intimidating and repetitive reveal that you think "improving communication" is something you do by talking more. Wrong. Talk less. And when you talk, ask questions. Ask if they have what they need to do their job well. Ask if deadlines are reasonable. Ask if they're feeling over- or under-challenged. Then act on their concerns - if they see that answering your questions yields actual change, they'll begin communicating proactively and you won't be blindsided again. –  Michael Ames Jul 14 '11 at 20:32
show 14 more comments

34 Answers

Well, first thing to spend some time with your team, then motivate them to improve skills, make them understand, that the project will be a milestone in everyone carrier. Spend time out of official work with team once in a month. Feel free to appreciate their initiative and effort. Its just a matter of behavioral change. BTW most of project have critical and worst face, but its the area, where a manager need to prove his patience and ability. As a manager your responsibility is not just to manage a team/project, you are more than that. Basically you are mentor for them, a teacher for them. Wish you a good luck!!!!!!

share
add comment

My first thought is; tell me Your company name so I can short it.

You have horrible management issues and have zero trust with developers. At least You've figured it out before the company went down in flames.

Start by reading "Deathmarch", it sounds like the kind of projects You're running, then You can start understanding just what kind of dynamics You're working with here.

share
add comment

As far as I know, you need to give importance to every thing in this world.Nothing is unvaluable.The things in the world are useful for something.So, we need to give respect to all and we need to give importance to everything.Dont hurt any one.Keep yourself in other shoes,if it hurts you then probably it hurts others too.

share
add comment

You ask some very good questions. A great first step toward improving your relationship with your team would be to share with them what you've shared with us.

share
add comment

Not the answer you're looking for? Browse other questions tagged or ask your own question.