9

As a team member, or as a programmer, would you accept a boss like that? If he wants to learn and he is interested by programming and what a programmer does? Can somebody with not programming background understands quickly how an IT environment works?

  • 1
    ask yourself this : is it sure that a developer will become a great PM? if not, then maybe it shouldn't be a requirement. – AndersK Jul 30 '13 at 8:44

11 Answers 11

9

One thing needs to be clarified here; the PM's role is NOT to develop any code. One role is the programmer, developer, etc... so I would hire people with technical skills required to do that role, and another different role is the Project Manager's. For this role, I would hire the person with the strongest capabilities to lead the project (if he or she has technical skills on top of project management expertise then good, but it's not the core competency I would be focus on)

The Project Manager is the person responsible for capturing customers requirements, estimating, planning and communicating to the Team Members, Stakeholders and so forth.

Good PMs can handle multi-disciplinary projects regardless of the field/industry.

The key to ensure that both PM and Team can successfully work together and deliver the agreed outputs is COMMUNICATION. If you, as a programmer, come across certain issues with infrastructures, testing or anything related to your area of expertise, you need to have the back up support from your PM. He/She needs to understand your issue, estimate the impact (with your help, of course) to the product/output, and communicate delays or additional requirements to the stakeholders. I really don't think you need a person that knows different programming languages to understand that for X reason you cannot deliver and therefore the project may be delayed. On the other hand, a manager that understand that you have issues and supports you by communicating clearly and effectively with clients/sponsors and gets you additional resources/time/funds I believe it's more efficient.

My recommendation is to keep your mind open and support your manager. A solid working relationship will be more beneficial to you during the project's cycle life.

  • 3
    +1 for keep an open mind and support your manager. And the other side holds too: the manager should keep an open mind and recognise that he or she does not know everything, regardless of background. – Iain9688 Feb 29 '12 at 18:04
  • @Iain9688 - you are absolutely right; the above relationship of support and understanding must be reciprocal. – M0N4K0 Feb 29 '12 at 21:59
  • 1
    +1 - I had an entire post written on the importance of technical skills in a position, then I realized it was a PM position and deleted it :) "the PM's role is NOT to develop any code." – jmort253 Feb 29 '12 at 22:41
8

I am a fresh project manager, who grew up from developer. I noticed in my company, that knowledge of technical issues really helps me manage complex technical projects. It allows me to better understand developers , and when dealing with a client I can understand a lot more technical and business issues.

I noticed that pm's in my company, who don't have even a basic technical knowledge have a harder situation with many problems, because they simply do not understand them.

Whether or not you hire someone who does not have technical knowledge depends on the specifics of the project and the competence of that person in your company. If he/she wouldn't have to make decisions that require such knowledge, or will have for example the production manager, that will be able to give him such information - then OK. But personally I think that it is better that the person had at least a basic knowledge of technology that will have to work with.

  • All of us have our beliefs and biases and you are free to have yours. Just becareful with them because much of what we believe to be true are not grounded in truth. Becareful about taking too much stock into what you observe. You observe only a little tiny piece and through a biased lens. – David Espina Feb 29 '12 at 15:02
  • @ Pawel: I totally agree with you. I am in the same boat as you are in and became a PM recently from development. I understand most of the project deeply if some developer is trying to give me a scenario. – RG-3 Feb 29 '12 at 16:37
  • @DavidEspina: I understand what you are saying here. However, I am agreeing with Pawel. If you have some bits and pieces of technical understanding of how code works: GREAT! – RG-3 Feb 29 '12 at 16:39
  • 2
    I agree, it is great. But great does not necessarily mean there is a correlation, or cause and effect, between technical knowledge and less risk of failure. Tech knowledge is one of many attributes that lead to a lesser risk of failure. One of many. – David Espina Feb 29 '12 at 18:29
  • @DavidEspina: I'm very careful with my observations. I'm not saying that non-technical pms are worse employees - they are great. But many of them are my good friends and I know their problems in that field. I know that sometimes they feel unconfortable taking part in conversation concerning technical issues in their projects. – Paweł Wawrzyczek Mar 1 '12 at 10:08
7

I'd hire the person who is smart and can demonstrate that they can get things done. If he happens to have the IT background, wonderful.

  • Totally agree with you David. – M0N4K0 Feb 29 '12 at 13:56
  • Thats very Joel... – Ricibob Apr 26 '12 at 9:05
6

PMs don't need to be very familiar with the IT environment to be successful. It helps but its not critical since most of the work he will be doing won't be of a technical nature anyway.

IMHO, You have more problems with those clueless ones that THINK they know IT.

The key thing about dealing with non technical PMs is to have a strong technical team leader to act as a bridge between the team and management. If you are missing a good team leader as well then things can get messy.

3

I would prefer a strong people manager to a brilliant programming leader as my boss.

Somebody who takes it on the chin for the team,understands & resolves people issues.

As far as IT background goes,in my experience I have seen non "technical" project leaders/managers (who have the skills to interview & elicit information from tech people and who created a culture of trust and fearlessness in the team) fare much better than ones from a hard core "technical" background (leading purely from a technical aspect).

The key is (as I mentioned above) is the ability to "understand" tech speak & tech peoples's egos, make sure that there are no impediments in their way :)

3

To answer the headline question: Absolutely. If the person has the right skills, I would take him or her on regardless of programming background or not.

You imply that an IT environment equals a programming environment. That's an interesting side issue: I work in an IT environment and always have. In my current role I work alongside about a dozen other environment and infrastructure PMs, and the majority of us have never written code as a professional programmer, and we don't manage programmers either. We deliver infrastructure, we manage testing, and we coordinate implementations. Other PMs manage the programmers.

You also ask whether a programmer would accept a non-programmer as a boss. Well, having been a non-programmer who managed programmers in the past, I have to say that this can work, but both groups have to accept that the skill sets and the knowledge bases are quite different, and they have to work through the inevitable challenges. This can bring benefits to both: the PM can often see non-technical solutions to a problem, while the programmer may be able to offer better ways to achieve an end result than had been put forward by the PM.

Your final question is also interesting: whether a PM without a programming background can understand how IT environments work. I believe the answer is yes, although it may take a little time to get up to speed. Deep detailed knowledge should not be required, although a general understanding is helpful. As a PM who has moved from one business to another, and one technical environment to another several times, I find that honesty about what I know or don't know is the best way to progress. One of the most powerful questions is "Can you explain that in easy, layman's language" - which forces the technical person to really think about his answer, and can uncover a whole load of assumptions or identify things that are done "because we have always done it that way".

  • My current company uses IT, IS, and R&D to describe 1) day-to-day technical support type developers and support staff; 2) big database/ERP developers and support staff; and 3) end-user product developers and support staff. It's actually been quite a useful way to think about the different groups. – SBWorks Mar 1 '12 at 5:23
  • @SBWorks, that's an interesting way to look at it. I did work in one place where we used IT for the technical infrastructure, IS for business analysis, user support, and integration, and Development for, well, development! There are certainly different models out there, and I would not venture to say that one was better than the others. Keeping an open mind and recognising the value of other models can provide very useful insights, so thanks for your comments and also for reminding me of my old job! – Iain9688 Mar 1 '12 at 20:00
2

Keep in mind the Project Management isn't Functional Management. The Project Manager needs to be aware of and familiar with the -types- of problems and issues that might arise on a project, but won't be expected to resolve them. More typically, the Project Manager will benefit from more "paperwork" and "interpersonal" skills than anything IT related.

As a team member in this environment, if the PM is willing to learn, then it might be a better situation as the PM may approach situations with an open mind and be receptive to good feedback from the team, rather than try to use their background and experience to "drive" the team to a course of action.

2

Well I'm developer and I would n't accept a project manager which wasn't a developer at least for a short time. Somebody without this experience doesn't know what the typical problems of a developer are. I don't want him to solve the technical problems, but I think he should be able to see from the perspective of his developers to know when it's necessary to interfere and when not.

  • 1
    "Somebody without this experience doesn't know what the typical problems of a developer are" - is this an assumption or you know it by numbers? – Bartosz Rakowski Feb 29 '12 at 9:08
  • 2
    It's my own opinion. I know it's pretty bold. But I know some people who are sharing it. The point is, that I don't like the "In theory" approach. Sure a PM could prepare himself by reading some books, visiting workshops or talking to the developer, but this preparation will never be as good as when it has happened to himself. – DHN Feb 29 '12 at 10:11
  • Is that so difficult to learn programming? If you put your mind to it and you are motivated. I would take 2 or 3 days even a week and sit beside each of my team members to learn what they are doing everyday and what they need. I like new challenges. – Simon Boulanger Feb 29 '12 at 13:50
  • I think you have had some bad experience with previous (or current ) Project Manager(s). However, your firm statement "I wound n't accept a project manager which wasn't a developer at least for a short time" has no foundation. As you say, you don't need him to fix technical issues, so if you want him to understand you better try to approach him/her with your concerns. – M0N4K0 Feb 29 '12 at 14:00
  • 2
    I meant that it is easy to start learning programming if you are motivated; but much more difficult to be a great programmer. I like complicated stuff. – Simon Boulanger Feb 29 '12 at 14:27
1

If your company has a management style similar to the type that Joel Spolsky recommends, where technical decisions are made by the front-line technical people, then a non-IT person who happens to have good people skills should work fine.

If your company has a command and control management style or a place were technical decisions get escalated "up the chain", the chances of a non-techie project manager being accepted by the project team and be an effective leader is quite low.

1

As a non techie manager in an office full of developers, I can relate to this topic from experience. I agree that: "The key thing about dealing with non technical PMs is to have a strong technical team leader to act as a bridge between the team and management. If you are missing a good team leader as well then things can get messy" However, my job requires that I research the industry itself for trends and current events whereas this is sometimes "news"for programmers who have a preferred method of coding. They tend to be happy within those parameters. No, not everyone...but I am always surprised at how many can't be bothered to look outside their nook.
When they do, it's always a treat because we both learn something.

1

I don't think there is a general rule because there are good PMs and bad ones regardless of developer/IT experience.

I have had great PMs that have not been very techsavy but they knew how to listen and communicate. A PM is not necessarily somebody you sit and discuss technical problems with, instead his main role is to act as administrator.

I have also had mediocre PMs who obviously cannot let go of their developer past and see an absolute need to micromanage developers.

So no, I don't think it is necessary with a developer/IT background but it is a bonus if the PM is good.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

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