Slashdot Mirror


Project Management For Programmers?

welshdave asks: "I'm a senior web developer in a medium sized company where the project managers have no programming experience of any sort. I'm of the opinion that project managers should understand the projects that they're managing and want to move into project management myself. I'm aware that I may meet resistance from the current project managers - many of them have been hired with no previous experience of anything. Previous suggestions to senior management that myself and other developers would feel better with a technical person running projects have been dismissed. As a result we are routinely told to skip testing or to implement the impossible, with an emphasis on how things look rather than how well things actually work. Has anyone else found the barrier to project management is their technical knowledge. How did you get past it?"

445 comments

  1. Don't want to discourage you, but... by Anonymous Coward · · Score: 4, Interesting

    I think that a certain lack of detailed knowledge about what is possible and what is not might be the key to successful project management. Yes, an impossible task assignment is probably going to cause a little confusion among the techs, but it can also be eye-opening in the sense that it teaches them about what people want. Techs commonly have a certain close-mindedness about how things should be done which can be very unhealty to a project.

    1. Re:Don't want to discourage you, but... by lennart78 · · Score: 3, Insightful

      I think you're right in this. A project manager should, in my opinion, be responsible for planning and control, and not for any tech-stuff.
      In my company, there is a group of persons that discusses with the customers about what they want, and what is possible. THAT's a point where tech-expertise is needen. When the specs are settled, it is handed over to a PM to make sure it gets implemented.

    2. Re:Don't want to discourage you, but... by anshil · · Score: 3, Insightful

      I think you should add some examples....

      I think one popular issue are colors in emails. Really? Why are colors bad in email? (Tell people not to use HTML mail because it's bad?), or even worse RTF?.

      From a technical standpoint I understand very well that emails are text only, no colors, no underline, no bold. But now step backward from your techy knowledge and think about it from a pure users perspective. Now why can't I put colors in my email??? Whats really so bad or difficult about them?

      --

      --
      Karma 50, and all I got was this lousy T-Shirt.
    3. Re:Don't want to discourage you, but... by Dilbert_ · · Score: 2

      I think it is always a handicap to have a lack of knowledge. Not a deadly one, mind you. The killer combination is a lack of knowledge and a refusal to acknowledge it. Good managers listen to what their skilled subordinates tell them about their field of expertise, take into account other things like scheduling and customer demands, and then decide. Not listening to the techies can kill a project stone dead.

      --
      superblog.org: all your favourite blogs on o
    4. Re:Don't want to discourage you, but... by DNS-and-BIND · · Score: 5, Interesting
      Ha! The company I was recently laid off from (they just had a round of layoffs, does that tell anyone how well they're doing) had the clueless project managers spoken of above. We ran a custom mail server on big Solaris boxes, and these project managers didn't know so much as "ls -l". Time and time again, we were tasked with impossible projects, which could absolutely not be implemented in the time allowed. As a result, we cut corners on testing, reliability, and system updates, with predictable results. We would get a machine into the field, and it would crash when some user would try to do something "unexpected", like our agents crashing due to buffer overflow when the "Subject:" line of an email exceeded 256 characters (The PM solution to this? Fix the overflow? Nah, they just had the programmers raise the limit to 2000!). Critical operating system patches were never implemented, due to "we'll have to test it, and we don't have time". The result? Hacked and vandalized boxes, and massive time wasted doing pricey reinstalls and customer apologies. Implement a real mail delivery system? Nah, just hack something together whereby sendmail invokes a brand-new shell process which runs an SQL script to inject the email into the database. Two expensive processes for every single incoming email! This particular problem was not fixed until some months after a spammer sent us 14,000 emails in a single hour and the system load rocketed to over 100 (on a beefy Sun Enterprise 4500, no less), and basically DOS'd the system. Expensive crash, humiliating customer apologies, the responsible PM being fired, etc.

      It wasn't that the techies were doing poor work, or slacking off on the job. Far from it - we worked our asses off. But a lack of knowledge about what was and wasn't possible resulted *directly* in impossible task assignment, with the entirely predictable consequent frequent outages and customer dissatisfaction.

      Oh, and remember how I said we had layoffs? All the project managers were laid off save one. The surviving PM was universally held as being technically competent and a gem among mud.

      --
      Shutting down free speech with violence isn't fighting fascism. It IS fascism!
    5. Re:Don't want to discourage you, but... by Anonymous Coward · · Score: 0

      Exactly.

      Quite honestly, would someone want a group of bricklayers, plumbers, and electricians strumming up the architectural design to a high-rise building -- would they even want someone who knows all of these skills, plus masonry? Or would they want an architect?

      Programmers, on the whole, do NOT deal well with customers, stakeholders, etc. If you can't deal with a clueless PM, imagine your troubles when you have to speak to the stakeholders directly -- who often will be even more demanding, and more unreasonable than your PM is.

    6. Re:Don't want to discourage you, but... by Anonymous Coward · · Score: 0

      What I meant was "not completely detached from reality but also not too close to the technical details". If I understand you correctly, micromanagement is what killed your project: Technical decisions made without technical knowledge. Not every project manager with just an "abstract" sense for technology is a good manager.

    7. Re:Don't want to discourage you, but... by ph1ll · · Score: 1

      > a certain lack of detailed knowledge about what
      > is possible and what is not might be the key to
      > successful project management

      So you are saying that ignorance is an asset in management?

      Well, I had always suspected this to be true!

      Phill

      --
      --- "We've always been at war with Eastasia."
    8. Re:Don't want to discourage you, but... by sql*kitten · · Score: 4, Informative

      I think you're right in this. A project manager should, in my opinion, be responsible for planning and control, and not for any tech-stuff. In my company, there is a group of persons that discusses with the customers about what they want, and what is possible. THAT's a point where tech-expertise is needen. When the specs are settled, it is handed over to a PM to make sure it gets implemented.

      A project manager has a set of skills that are distinct from by complementary to the skills of an engineer. A project manager who starts their career as a project manager often has great skills for, budgeting, say, and understands the administrative details as a role. The reason that these people fail is that, lacking an engineering background, when creating plans they are unable to accurately estimate time and resource requirement, and even worse they are unable to identify critical paths, dependencies and opportunites for parallelism.

      The ideal structure is to have a project manager to take care of the details, and a system architect to see the "big picture" and have overall responsibility for planning and executing the project. If the project manager is in charge, then that individual should have at leat 5 years experience "in the trenches" on similar projects, and should have the authority to set priorities and trim the feature set if necessary.

    9. Re:Don't want to discourage you, but... by Beliskner · · Score: 1
      But now step backward from your techy knowledge and think about it from a pure users perspective. Now why can't I put colors in my email???
      Or even better just use a Macromedia Flash attachment with a cute little animation. Plus attach IloveYou.bat.exe. Viruses propogate for a reason, dude, you hit the hammer on the head.
      --
      A caveman dreams of being us, the incalculable power and riches. We dream of being Q, then what?
    10. Re:Don't want to discourage you, but... by Shynedog · · Score: 2, Interesting

      Yes, an impossible task assignment is probably going to cause a little confusion among the techs, but it can also be eye-opening in the sense that it teaches them about what people want.

      I agree with that statement, to a point. Receiving a ridiculous assignment from a group of non-technical managers is frustrating for the developers, but usually not the end of the world. However, I draw the line when said managers also stick their noses into choosing the tools for the development of the project.

      I worked as developer for a small software company not too long ago. Our project manager was an idiot with no technical experience whatsoever. Ditto for the owner of the company. When we began development of a new web-based version of the company's flagship desktop product, management insisted on choosing what language would be used for development. They also decided that we would use some fledgling object-oriented database instead of Oracle or some other well-established DB. (Only after a week of protest from the horrified developers did they finally concede on that point.)

      So to answer the original poster's question:
      Has anyone else found the barrier to project management is their technical knowledge. How did you get past it?"

      Do what I did. Quit instantly and find a new job.

    11. Re:Don't want to discourage you, but... by Anonymous Coward · · Score: 0

      Sure thing, while were at it why do my 120MB attatchments that I sent to 120 people disappear for some reason? And flash animation, don't you think sending the CEO an accounting document accompanied by a dancing bear is cute? That damn virus that went around gave my whole staff the day off! Cute name too, Klez.

    12. Re:Don't want to discourage you, but... by Lobsang · · Score: 4, Interesting

      Allow me to respectfully disagree...

      What you're asking for is a ship captain that doesn't know how the ship works! Most project managers have no idea about the inner working of their projects. The end result: flawed deadlines, angry programmers, impossible tasks, annoyed bosses and/or clients.

    13. Re:Don't want to discourage you, but... by twinpot · · Score: 3, Interesting

      I'd tend agree as well. Many techs make very poor PMs, and can get distracted with the technical issues at the expense of the overall project. (yes, there are exceptions, but in 20 years I have seen very few good techs that make good PMs).

      What can be useful is to have a "Technical PM", who is responsible more for the technical aspects of the project - assigning and selecting staff, approving estimates etc. This person then works very closely with the non-techy PM.

    14. Re:Don't want to discourage you, but... by Anonymous Coward · · Score: 0

      If you really want to find out about the business of Project Management, check out a local chapter meeting of the Project Management Institute

    15. Re:Don't want to discourage you, but... by bay43270 · · Score: 2

      If the project manager is in charge, then that individual should have at leat 5 years experience "in the trenches" on similar projects, and should have the authority to set priorities and trim the feature set if necessary. I think this would be great in an ideal situation. Hoverver, given the choice between having a leader with project managment experience OR programming experience, I would pick a good project manager, hands down. In my last two jobs, all of my supervisors are current or ex-programmers. Not only did they not have any formal project managment experience, they refused to believe there was any pattern or defined rules to becoming a good project lead. They believed project management is simply a series of "gut calls", and that good project management was simply an instinct. If given the choice, I would rather work with a project manager with both programming skills and project management knowledge... but right now, I'd settle for someone with a f%#@! MIS degree!

    16. Re:Don't want to discourage you, but... by Steve+Franklin · · Score: 1

      "What you're asking for is a ship captain that doesn't know how the ship works!"

      I'm beginning to understand why so much of the stuff I buy is utter crap.

      --
      Hic iacet Arthurus, rex quondam rexque futurus.
    17. Re:Don't want to discourage you, but... by sdokane · · Score: 1

      I agree that technical people have a certain close-mindedness that means that they cannot be trusted. A trivial example showing the comtempt many techies show for their users: working on a data repository our techies attempt to enforce Java naming convention on the data standards rather than how they appeared to the users. Many aspects of the projects the techies didn't like became "impossible to implement". Being an ex-C++ programmer, now a designer, I knew much of this was BS. They were not above playing games either, by passing the normal "chain of command" and attempting to go over people heads. The important thing here is that this is really normal behaviour for many developers. They don't see it as destructive. Their way is the "correct way". If you think most developer are flexible, just consider the response of a Unix programmer asked about MS stuff, or visa versa. Good PM requires an ability to see the world from the other persons perspective. Often those with good technical skills do not. In short, good technical skills are a plus, provided it doesn't also mean do-it-my-way baggage. If you can convince others you are a flexible personality you should have no problems.

    18. Re:Don't want to discourage you, but... by James+Youngman · · Score: 5, Interesting
      A more common term for what you refer to as a "Technical PM" is "System Architect". This sounds nice to technical ears and is (rightly) percieved as a senior technical position. We also have Functional Architects on some projects, whose skills favour the business process analysis side of things.

      The other benefit of this is that the other guy doesn't get called a "Non-technical PM", which you have to admit isn't a very good job title.

      In the (quite large, 12k staff) company I work for, the pinnacles of career (at least for most people's career paths) are

      • Programme Manager - these are the guys the Project Managers work for
      • System Architect - career progression here is measured in terms of the criticality or size of the project you run/work on
      • Principal Consultant - your job here is to be your organisation's main expert on some specific thing (deep skills rather than the wider skillset which is more usual for a system architect)
      We do have some career positions above those, but they're mainly line-of-business and divisional management, Managing Directors of various business units, and so on. We have a dozen or so members of technical staff who are more senior than the System Architects for large programmes and the principal consultantts, but they don't really have specific job titles (as you might expect at that level, people know them by their name and reputation alone).

      We have a group Technical Director (used to be the deputy Technical Director of the BBC), but he doesn't sit on the executive comittee - that may be something it would be best to change.

    19. Re:Don't want to discourage you, but... by Sciamachy · · Score: 1

      It's not lack of technical knowledge that makes a good project manager, just management style. The received wisdom is that a technically clued PM will want to get personally involved in every aspect of the project & tend to just send people out as gophers - go do this, go do that, whereas a less technically clued one will leave how the developers work largely up to them and just present them with the target, timescale and reasoning behind the project so they buy into the project more & use their creativity together to make a better product. However, the connection between technical knowledge and management style is one of coincidence not one of actual cause & effect. A techy PM will be able to accurately scope a project & give a timescale estimate based on facts rather than expectations. If his management style is right, he should be able to get his team to produce a better project than one who knows little or nothing & expects miracles.

    20. Re:Don't want to discourage you, but... by e40 · · Score: 2

      I think you're confusing the project manager with the visionary of the project (who could be anyone). Project managers are rarely visionaries, because the skills for both are very different (and I would posit that the skills are opposites and will rarely be found in the same person).

      I agree that a good vision that pushes that boundary of what is possible (in the minds of the implementors) and is a really good thing. It is important, however, not to get too far out there, because that will have a negative effect on the people doing the work. It will either cause them to fail or distrust management (and the visionary).

    21. Re:Don't want to discourage you, but... by TheLastUser · · Score: 1

      Non-tech project tracking droids are ok, but if the duties go beyond keeping track of the timelines and budget, things can get messed up.

      People without technical knowledge have no business envisioning new features, or running IT business units.

      How many flight operations managers do you think have no experience in aviation? How many deans of Physics have no understanding of physics? How many school principals have no experience with education? How many petroleum plant managers know zero about petroleum production?

      Why then is it that we think an accountant is a good choice for an IT manager? Is a programmer a good choice to head up the accounting department? Maybe the reason that IT projects are often over budget is that the are, by and large, being managed by people who don't understand the business.

      The ideal IT manager, should possess BOTH technical know-how and management know-how.

      The origin of some computer ideas:
      text editor - tech
      dancing paperclip - non-tech
      html/http - tech
      zero info intro web pages - non-tech
      xml - tech
      enormous unusable dtd's - non-tech
      cdr - tech
      easy to crack cd copy protection - non-tech

    22. Re:Don't want to discourage you, but... by pizza_milkshake · · Score: 2, Funny

      I disagree. How well can one manage a project if they don't understand the steps or the relative complexity of the steps involved? It reminds me of a Dilbert cartoon where PHB assigns Dilbert the task of designing a global client/server infrastructure. Time alotted: 6 minutes.

    23. Re:Don't want to discourage you, but... by shayne321 · · Score: 3, Insightful

      What you're asking for is a ship captain that doesn't know how the ship works!

      No, what he's asking for is a ship captain that doesn't neccessarily understand how the ship's engine works. The captain should understand how to manage the workers in the engine room to get the most productivity out of them while keeping them happy, while interfacing with the passengers of the ship who keep yelling for the ship to go faster or slower so that the workers in the engine room don't have to deal with them. The ship captain should understand how to manage, run, and guide the ship - not tear it apart and reassemble it.

      Shayne

      --
      Today I didn't even have to use my AK; I got to say it was a good day -- Icecube
    24. Re:Don't want to discourage you, but... by Hector73 · · Score: 3, Insightful

      What you're asking for is a ship captain that doesn't know how the ship works! Most project managers have no idea about the inner working of their projects. The end result: flawed deadlines, angry programmers, impossible tasks, annoyed bosses and/or clients.

      About 2 years ago, I would have agreed with you. But now, I would say your Project Manager (whether technical or non-technical) is the problem. A non-technical project manager can do a great job of leading/planning a project AS LONG AS that individual does not make technical decisions for their engineers. The PM must listen to his/her senior engineers/architects to accomplish good schedule planning. Give the engineer a good set of requirements and get a resource and time estimate from the engineer. The PM must trust the engineer here. If the engineer conistently produces bad estimates (not from changing requirements, etc), then find another engineer to do estimates. The PM can then use these estimates to make decisions on what features to drop, priorities, etc. That avoids flawed deadlines, angry programmers (hey, they or another engineer made the estimate), etc. I've found this actually works out quite well at my current job. Never been happier.

    25. Re:Don't want to discourage you, but... by chris_mahan · · Score: 2, Insightful

      How much you want to bet that ship captains don't know how engines work? It's like asking whether truck drivers know how a diesel engine works. Of course they know.

      And I bet the ship captain knows too. There would be something funny about a freighter captain not knowing how the engine works as his/her ship battles a typhoon in the middle of the night 600 miles from the coast of China.

      Now, he may not know how to tear it apart and reassemble it, but he will know how it works, how much to ask out of it, how long it needs to warm up, how much fuel it takes at what speed, how much maintenance it needs, and so on.

      Likewise the product manager and/or planner may not know how to compile C++ code, but he/she should understand what headers are, what OO is, what procedure calls, COM, and that sort of things are. He/she should also know how much work is involved, and how to allocate the right amount of personnel resources, hardware resources, software resources, adequate office space, adequate working environment, adequate communication channels between workers, and so on and so forth. This sort of knowledge does not come in easy, and if the Board Of Director in their Wise and Excellent Counsel fail to realize that a marketing VP cannot lead a team of programmer, then the future is grim, and maybe the typhoon will take that company down to great unchartered depths.

      --

      "Piter, too, is dead."

    26. Re:Don't want to discourage you, but... by chris_mahan · · Score: 1

      Likewise another Dilbert comes to mind:

      Scene 1
      Dilbert: "Here is the estimated cost of the project."
      (hands PHB a sheet of paper)

      Scene 2
      PHB: "What can you do with half?"
      Dilbert: "Fail"

      Scene 3
      PHB: "When can you start?"
      Dilbert: "I think I already have..."
      (sad look on face)

      --

      "Piter, too, is dead."

    27. Re:Don't want to discourage you, but... by jomagam · · Score: 1

      If you are the tech lead and is tasked the impossible just speak up. Blaming buffer overflows on PM-s is questionable at best...
      I have experience with both technical and "clueless" project managers. The key with non-technical ones is to win their trust so they ask your opinions before committing to any projects. You can try to intimidate them with detailed technical description, to get the point across that they "don't know shit" :-)

    28. Re:Don't want to discourage you, but... by Anonymous Coward · · Score: 0

      Seems like XP has an answer for this in their concept of Planning:

      http://www.c2.com/cgi/wiki?ExtremePlanning

      and the coach:

      http://www.c2.com/cgi/wiki?TheCoach

      and the tracker:

      http://www.c2.com/cgi/wiki?AutoTracker

      Not that project planning and control isn't a great idea, but having a middleman between the customer and the programmer just adds to layers of bureaucracy(sp?) that aren't really necessary for project completion, and they implicitly introduce a hierarchy. Project Manager may be paid as much as programmer, but tells programmer what to do... programmer gets to be the grunt in isolation from the client. It is a bad way to work.

    29. Re:Don't want to discourage you, but... by anshil · · Score: 1

      But now explain why colors need to go with viruses?

      I know how HTML functions and all that from a technical point, but I _do_ have problems explaining a "normal" persons why colors, bold and underlining is not possible with email. Just once step back from the technical all day life and really try to think as a user. That way of thinking is what unix is missing! And all us geeks too.

      Actually why are i.e. ANSI emails not possible? Wouldn't this be something cool?

      --

      --
      Karma 50, and all I got was this lousy T-Shirt.
    30. Re:Don't want to discourage you, but... by berntbert · · Score: 1

      Why did you go along with the impossible task assignments? Management might have lacked the knowledge about what was and wasn't possible, but *you* didn't.

      You basically worked your asses off creating a bad solution, "...with the entirely predictable consequent frequent outages and customer dissatisfaction." Do you not feel you have a responsibility to prevent such predictable problems?

    31. Re:Don't want to discourage you, but... by Beliskner · · Score: 2
      Actually why are i.e. ANSI emails not possible? Wouldn't this be something cool?
      Dude, be quiet. Let Micro$oft collapse under its own weight when its lawyers try to lobby China to stop the selling of unlicensed copies, then suddenly the Chinese premiere says, "Microsoft is trying to screw us, just like Falum Gong". Then that's it.

      Now who would actually implement this? Currently instead of going to the w3c which Microsoft will just ignore (think Frontpage extensions), you'll have to convince Micro$oft to get Outlook to support ANSI emails. The linux people will b*tch about Micro$oft changing standards for a few weeks until the latest version of Eudoro supports it, then they'll shut up. It's so sad that Micro$oft has to pioneer new tech, otherwise it'll end up as just another pre-alpha on sourceforge. Catch-22, why use ANSI in email when nobody can read it, why get an ANSI email reader when nobody's going to send you any.

      --
      A caveman dreams of being us, the incalculable power and riches. We dream of being Q, then what?
    32. Re:Don't want to discourage you, but... by Anonymous Coward · · Score: 0

      I suppose the term "ANSI bomb" means nothing to you?

    33. Re:Don't want to discourage you, but... by HD+Webdev · · Score: 1

      People tend to spend more time mucking with the colors and formatting of emails they send out than they do on the content itself.

      I always skip html formatted newsgroup messages mostly for that very reason.

      --
      This is not a dream, not a dream...we are transmitting from the year 1-9-9-9.
    34. Re:Don't want to discourage you, but... by calarts_nutmeg · · Score: 2

      Well, there's a balance, because more often than not these are the rotten guys who drive us to work weekend after weekend while our sig-o's leave us after feeling negelected, while these "project managers" are off playing with their girlfriend on a wave runner, y'know. Every good Project Manager I've worked with had done some programming, they weren't necessarily a great or even professional programmer, but all had played with programming, or at least tried to take classes to see what is technically possible, as there is a difference between what's visionary and what's ridiculous, what if steve jobs had demanded that the mac os have full multitasking back in '83, forget it! Jobs is a great visionary because he knows what is both possible and what things could be done, but just aren't. The mac didn't come about because it changed the laws of physics, it just took a new approach to computing that was possible, but just never had enough backing to make it out of the lab.

      --
      Check my site out for ogg vorbis music produced with linux.
    35. Re:Don't want to discourage you, but... by DNS-and-BIND · · Score: 2
      Uhh...hey, Mr. Arrogance, it *was* transmitted to the appropriate people that we were setting ourselves up for disappointment. As my parent poster implied, though, there was a "we can do anything" attitude meshed with a general cluelessness that ultimately proved fatal.

      Plus, I was just a cog in the system. Why did I go along with the assignments? Mostly because the people around me had to do them, I successfully avoided entrapment in all but one or two of the fiascos, complaining I was too busy implementing our HP/Openview ITO solution.

      --
      Shutting down free speech with violence isn't fighting fascism. It IS fascism!
    36. Re:Don't want to discourage you, but... by Anonymous Coward · · Score: 0

      This from a lazy person who doesn't want to register...

      What interests me about this comment is that the author derides PMs while intimating that he/she had no choice in the matter. Either it was a horrible working environment, where the PMs were taskmasters and the "worker bees" never had any say, or the people responsible for technical implementation never spoke up and said it couldn't be done.

      While the topic of whether PMs should be technically proficient is a debatable (and good) one, this post points to a different issue. This is about the fact that, regardless of who's ordering the work, if it can't be done, someone should speak up and say so.

      It doesn't take a technical genius to understand when the staff says "we can't do this". You don't have to understand a single Unix command to get that something can't (or won't) be done.

      Following "orders" to cut corners or deliver a shoddy product is not only stupid, it also shows a lack of pride in one's work. Techie, if you can't do it, or it's going to be crap if you do it the way they tell you to, then DON'T DO IT.

      Blaming the PM later just shift the responsibility of your job onto their shoulders.

    37. Re:Don't want to discourage you, but... by Anonymous Coward · · Score: 1

      i made the jump. i am *BOTH* a project manager and a developer. i have x86 assembler coding under my belt, 3D rendering engines, semi-conductor robotics, etc. then, i started writing data migration between project management packages, then client proposals, scheduling, etc. project management happened by accident as a result of my management position.

      the best PM's are DEFINATELY former engineers, IF they have people skills. most do not, and that cannot be learned. a leader can be a PM, but to be effective in SW, you need the engineering background. a typical non-dating, jolt-drinking computer geek can never learn those skills. you need an extraordinary individual or prepare yourself for failure. i've seen it first-hand.

      paulchandler at hotmail.com

    38. Re:Don't want to discourage you, but... by patchmaster · · Score: 1

      There are lots of devices in everyday life where the person controlling the device knows very well the performance characteristics, but knows next to nothing about how the device actually does what it does.

      I'm willing to bet there are very few ten year olds who have any idea how a microwave oven works, yet most of them have no trouble at all making popcorn in them.

      I know the performance characteristics of my home sound system, but I have only a vague clue what's going on inside all the equipment. "Well, the sound comes in this wire here, it runs around inside this big black box, then it comes out these wires and goes to these really big boxes that throw the music into the room."

      There is absolutely no reason a manager needs to know anything at all about headers or procedure calls. The only thing most of them need to know about COM and OO is that they're software related so they'll sign off on training requests.

      I'll agree with your point about the marketing VP. Most of the ones I've met couldn't lead the way out of an elevator.

    39. Re:Don't want to discourage you, but... by kubrick · · Score: 1

      But now step backward from your techy knowledge and think about it from a pure users perspective. Now why can't I put colors in my email??? Whats really so bad or difficult about them?

      In case you start depending on them.

      In my explanations, I usually use the "lowest common denominator" argument -- the fact that this email may need to be read on any machine the world over, and the majority of those machines support a very limited set of features.

      --
      deus does not exist but if he does
    40. Re:Don't want to discourage you, but... by korgull · · Score: 1

      Certainly not true. A manager should be objective, that's a whole lot different than having lack of knowledge.
      What a lot of managers seem to forget is that they are part of a team. The same team as the engineers. When managers ask the impossible, it is up to engineer to convince them that it is not feasible. When a manager still decides to continue that job, it is his full responcibility and not the team he works in. Unfortunately, it's often the engineers who have to clear up the mess once such project has failed. At least that's what I experienced quite a few times. In that case, you're dealing with not only a manager who has lack of knowledge, but does not trust the engineers knowledge. Those managers should seriously consider starting a one-man company as they do not fit in any team.
      As for the engineers, they should be aware of their own planning. It's part of the engineers job to get his part of the job finished in time. A good engineer finishes his job in the time that he claimed for it otherwise he would let a whole team down. Unfortunately lots of engineers only look at the technical aspect of their job, which also means they do not fit well into a team.

      It's more about a whole team that functions (not) well. In case there's no interaction between managers and engineers, you're probably in te wrong company.

    41. Re:Don't want to discourage you, but... by humblecoder · · Score: 1

      I hope somebody mods this up, because this is SO true! Lack of knowledge as a manager isn't so bad as long as you are able to admit your limitations and surround yourself with trusted people who DO have the knowledge that you are missing.

      Whenever I do a tech interview with somebody, I always make sure to ask something that the person probably won't know. I want to see if they just admit that they don't know, or if they try to come up with a BS answer. I'd rather have somebody who admits that they don't know something, rather than somebody who tries to fake it.

    42. Re:Don't want to discourage you, but... by anshil · · Score: 1

      And why isn't it upgradeable with backward compability? like in example the way color television was introduced, it's still watchable on a black/white TV (as if anybody would care today)

      It's again as all others, you're thinking to techincally arleady. technic (and software) should be the solution, it should _not_ dictate the problem. I think thats a point almost all geeks get it wrong with. Software should only be a solution, it should not dictate whats right and whats wrong. (like this example again, why are colors wrong?).

      --

      --
      Karma 50, and all I got was this lousy T-Shirt.
    43. Re:Don't want to discourage you, but... by anshil · · Score: 1

      Overstating counter arguments to make them sound funny is not a nice thing to do. Look I talked about colors, not about flash animtations, what have flash animation to do with? NOTHING. I talked about colors, not about animations, what have 120MB attachments to do with it? NOTHING.

      Look some dozend years ago, people introduced a coding standard to represent the letters of our alphabet as binary data, we call that ASCII, it's a world wide norm. Now whats wrong with extending that representation rules with a little more to represent more closer what I can draw on a paper? Whats wrong with that?

      Just explain once to a "normal" person why extending formating in emails is wrong, and why it should not be done. It's a shame for us technicans that it isn't possible. _We_ should come up with a solution! Not dictate the users what they are allowed to do, and what not.

      --

      --
      Karma 50, and all I got was this lousy T-Shirt.
    44. Re:Don't want to discourage you, but... by Anonymous Coward · · Score: 0

      how does some who starts their career as a project manager have great skills for, say, budgeting? Especially when said individual has no experience with budgeting. On budgeting, he's on level ground with someone starting their career as software engineer ( minus, perhaps, a sophomore level course is accounting.) That's like saying someone who starts their career as a software designer has great skills for say, system archtecture. Not knowing about computers does not increase your sill for leadership. Leadership is gained from experience, not social status.

    45. Re:Don't want to discourage you, but... by Anonymous Coward · · Score: 0

      what project management skills did your project manager skills come with?

      Accounting 101?
      Treasurer in their fraternity?
      A seminar on "understand diversity in the workplace"?
      A suit and tie?

    46. Re:Don't want to discourage you, but... by Anonymous Coward · · Score: 0

      you don't know the performance characteristics of your home sound system. You are at the mercy of the glossy sales brochure and the pimply dork with a backstreet hairdue that works on commission at the stereo store. That's the problem. Project managers with no other experience are too easily distracted by shiny objects, and too easily convinced by hairdos.

    47. Re:Don't want to discourage you, but... by Anonymous Coward · · Score: 0

      The funny thing is, all the workers got laid off, but none of the managers. So that dismisses any pretence that the managers' job was to manage the workers.

    48. Re:Don't want to discourage you, but... by Anonymous Coward · · Score: 0

      actually, the jolt-geek can learn those skills quite easily. A date and copy of Dale Carnegie's "How to win friends and influence people" goes a long way. Of course without the social skills he can't get the date, without the date, he won't have the incentive to develop social skills, catch 22. If they'd just raise his wages to the point that girls find him attractive, you'd see techs with management skills popping up all over the place. Look at all the ex-Microsoft geeks who went on to form successful companies. They were jolt geeks with zero skills, but when their options matured, so did they.

    49. Re:Don't want to discourage you, but... by Hast · · Score: 1

      Sure, there are a lot of things we can use but don't know exactly how they operate. Noone is saying that everyone needs to take a test before they heat things in the microwave.

      But you can't have the captain of a ship not knowing anything about the ship. They need to know how fast it can go. How long it can go on a full tank. What tolerances and safty margins there are for bad weather. And a lot of similar stuff.

      Likewise a project manager should know how to code and have some experience with it. Even if they don't know the details they need to know what they can expect the "guys in the trenches" to do for them. And at the very least they should know enough to know that they don't know as much as the coders.

    50. Re:Don't want to discourage you, but... by kubrick · · Score: 2

      And why isn't it upgradeable with backward compability?

      Politics and cost -- because enough mail-handling programs out there were written to a spec that doesn't really allow it.

      There's no 'wrong' or 'right', but there is 'way too much money spent re-engineering for a feature of dubious value'. Why not start a new mail format, add features up the wazoo, call it something else and stay off port 25 and out of the territory of RFC 821/822?

      --
      deus does not exist but if he does
    51. Re:Don't want to discourage you, but... by killer9514 · · Score: 1

      I agree with this comment totally. You don't hire the head of the mail room to be the CEO of the company. Same applies here. PM's need to know the technology and know the developers. The PM should be responsible for the success of failure of the program. They have to know how to identify and mitagate risks. They have to have some knowledge of how long it takes to write code to ensure developers are giving accurate estimates on hours needed to complete tasks. PM's also need to be aware of what it takes to accomplish the mission. Sometimes the complexity of a solution can be over kill in relation to the time that is allowed to develope. In many cases it is a good idea to make the Lead Architect and the PM the same person. This makes the Architect accountable for the solution to be developed and leads to less over kill.

    52. Re:Don't want to discourage you, but... by dprust · · Score: 1

      What you're all really asking for is trust. The Project Managers typically don't trust the engineers. There is a reason for this, however.

      Project Managers tend not trust engineers because they are often not trustworthy. The typical engineer has a personality that needs to be right so much that it affects their behavior negatively. For example, how many engineers have you met that always seem to know everything, yet when you look deeper, you find they were wrong? Or, the engineer who, no matter what is said, always is ready to pounce and say, "I knew that! Don't you think I knew that? What, you think I'm stupid?" It is natural to want to be right, and not natural to do it at the expense of /being/ right.

      I have also seen engineers turf-protect. They purposely write terrible code so that nobody else can read it. They hold back information, or give wrong information just to cause another person to look worse than them. The more incompetant the engineer, the more this behavior manifests itself into the end result of the Project Manager no longer trusting /any/ engineer because this behavior is so common.

      [This may apply to you, or not. Did you read my message, and assume that I meant all engineers? Are you ready to flame it because there is a spelling error? Did I offend you? How do you feel right now, and why? Analyze it. No matter who you are, it never hurts, and can lead to some eye-opening data.]

    53. Re:Don't want to discourage you, but... by Hast · · Score: 1

      Naturally, but these symptoms are not really of engineers any more than that not listening to advice is typical behaviour for managers.

      It is typical for people with bad attitudes though. And they might very well get in that attitude by dealing with the wrong type of manager/engineer in the past.

      But I think that if this type of behaviour is common for engineers or managers (or any other employee) where you're working then it could be time to start looking for a new job. It seems like the company is soon to appear on "fuckedcompany.com". Because it's quite apparent that nothing good will come out of the situation.

      And the more you push the people (managers or engineers) the more set they will become in their bad attitudes. Either someone has to make a cleansing happen. Let people air their problems and try to get to the bottom of it. Otherwise the situation will only get worse, and the only people left will be the incompetent and those that are "loyal" enough to go down with the ship. (And there is nothing good about that.)

    54. Re:Don't want to discourage you, but... by patchmaster · · Score: 1
      But you can't have the captain of a ship not knowing anything about the ship. They need to know how fast it can go. How long it can go on a full tank. What tolerances and safty margins there are for bad weather. And a lot of similar stuff.
      Yes, the captain needs to know how fast the ship can go and how far it will go on a tank of gas, but that doesn't mean he has to personally monitor the engine RPMs or the fuel flow. He can ask the guy in charge of the engine room, "How fast will this tub go?" Likewise, a project manager doesn't have to know how to code to ask the developer, "How long will this take?" Over time, the manager will develop a sense of how accurate the developer's estimates are and will compensate for the inaccuracies. None of this requires in depth knowledge of the skills needed to write even a single line of code.
    55. Re:Don't want to discourage you, but... by Thee · · Score: 1

      As I am working as Project Manager on Software Development... My background is not technician. However, personally, I think you have to understand what is project management and what is different between project management and do activities as project manager. Different people have different charectors to perform... If you are programmer is not mean that you can not perform Project management but in turn, you may not perform as good as you could do compare with programming or other project manager. As the real case, my programmers used to think that they could be Project Manager because they know well technical but when they tried, I gave them a chance to manage projects, they realize that project management is not as easy as they think. Becasue skill that they have do not support on PM Activities, Interpersonal and understanding someone requirement. However, I suggest that Project Managers have to understand programmer and other stakeholder nature also technical issues to control and manage project to achieve to successful. For technicians, Software project management has been fail for more 80%, but this number is not come from only mistake on Project management but all of us have to understand that all parties, who involve on project has to take responsibility... Which mean if anyone still bias or doubt in the others, project will not reach to success for sure.

  2. help your PM help ypu by chongo · · Score: 5, Insightful

    I found that it was easier to sit down with my PM and asked then the one thing they needed to make their job easier. If it was half way reasonable I went out of my way to give that to them ... in turn they seemed more willing to listen to reason and help form a project timeline that was 1/2-way based on reality.

    --
    chongo (was here) /\oo/\
    1. Re:help your PM help ypu by chongo · · Score: 1

      Errr ... s/ypu/you/g *sigh*

      --
      chongo (was here) /\oo/\
    2. Re:help your PM help ypu by chongo · · Score: 1

      err ... s/asked then/ask them/ ... suffering from being up to late working on a project. :-(

      --
      chongo (was here) /\oo/\
    3. Re:help your PM help ypu by fallacy · · Score: 2, Funny

      "in turn they seemed more willing to listen to reason and help form a project timeline that was 1/2-way based on reality."
      ...
      ...
      "suffering from being up to late working on a project :-("

      Sounds like you might need to butter up your Project Manager a bit more...

      ;-)

    4. Re:help your PM help ypu by rainer3 · · Score: 1

      If you think that what is being asked of you is "impossible," then you're only hearing the "wants." What I've discovered is through talking with your PM, find out what they really need. If your PM really has no technical knowledge, then they can't make that differentiation, and you have to help them with that. Once you've made it clear to them that what they want isn't necessarily what they need, then you're more often than not going to be able to figure out a reasonable plan.

    5. Re:help your PM help ypu by Sciamachy · · Score: 1

      Good move! It's just being honest & having a bit of give & take. By connecting as people, you expand your circle of influence. I'll have to try that one myself.

  3. Stop whining, start doing. by smoon · · Score: 5, Insightful

    As a developer I've found that most management-types don't give a hoot about technical details, or much of anything else that a heads-down developer might care about.

    What will get attention is an understanding of business need, an attention to detail in terms of reporting progress and delivering systems that work, and positive attitude.

    As a manager I get very tired of hearing about the programmers, sysadmins, etc. complaining that such-and-such can't be done, or otherwise blocking progress. Much more often than not things that "can't be done" just require a re-statement of the problem and some creative application of simple ideas.

    My recommendation would be to make a friend or at least the aquaintance of one of the project manager's bosses, and just talk. Don't attack the current project managers style -- that would make their boss look bad. Don't complain about the impossibility of whatever. Mention that you have an idea of how to accomplish some objective. Show that you have some clue as to what the managers are interested in. Show that you have some interest in the companies performance. Be prepared to give out some 'write ups' that show a very clear train of thought and that make a clear recommendation up front, with backup material and dialogue exploring alternatives explaining why the recommendation makes sense.

    If that doesn't work, then get a job with a company that has a clue. They're out there.

    --
    "But actually trying to use m4 as a general-purpose langage would be deeply perverse" --ESR
    1. Re:Stop whining, start doing. by Anonymous Coward · · Score: 0

      What will get attention is an understanding of business need, an attention to detail in terms of reporting progress and delivering systems that work, and positive attitude.

      And you forgot that when your performance is subpar, you should always try harder. Seriously, this crap goes on all the time, and the only way to fight it is with your hat. Grab it and run.

      The environment described is Schmoozer City, and the boss probably has his girlfriend on the payroll, too.

      Been there, suffered through it.

    2. Re:Stop whining, start doing. by mpmansell · · Score: 1
      As a manager I get very tired of hearing about the programmers, sysadmins, etc. complaining that such-and-such can't be done, or otherwise blocking progress. Much more often than not things that "can't be done" just require a re-statement of the problem and some creative application of simple ideas.

      Isn't this the problem, though? A manager who isn't technically qualified to ask the correct question cannot expect to get what he wants to be the right answer. Like everything else in human interaction, it is the responsibility of the communicators to be understood, not get annoyed because they are incapable of coherent specification.
      Additionally, your statement also does indicate that your developers are not always as far into the decision loop as they ought to be. As a long experienced developer and project manager, I am aware of the skills of me team mates. If their opinions are worth nothing to the decision making process, then I doubt they are qualified to be in our team.
    3. Re:Stop whining, start doing. by ThePilgrim · · Score: 4, Insightful
      As a manager I get very tired of hearing about the programmers, sysadmins, etc. complaining that such-and-such can't be done, or otherwise blocking progress. Much more often than not things that "can't be done" just require a re-statement of the problem and some creative application of simple ideas


      When a techie says it can't be done. 9 times out of 10 (s)he means it can't be done under the current constraints. Thease break down into time/features/money.


      If you can vary the constraints then you will find that most objections will dissapier.

      --
      Wouldn't it be nice if schools got all the money they wanted and the army had to hold jumble sales for guns
    4. Re:Stop whining, start doing. by Anonymous Coward · · Score: 0
      As a developer I've found that most management-types don't give a hoot about technical details, or much of anything else that a heads-down developer might care about.

      I think I've found your problem... President of the Galaxy is what you should be shooting for - it's the only job opening for multi-headed people.

    5. Re:Stop whining, start doing. by pschops · · Score: 2, Interesting

      This is part of the problem with PM's not being technical (and most management of tech areas). The wrong question for a PM to ask is, "Can XYZ be done". The wonderful thing about technology is that the same goal can be approached many ways, and technologies combined in unique ways. While lots of things are possible, how many are worth the money and man hours it would take, both in development and support?

      "Can it be done?" should be replaced by "Should it be done?". When the work is done and we step back and start supporting, living with and working with the result of the effort, will be truly get what we say we want?

      More things can be done than should be done. This is where not having fundamental tech knowledge on the part of a PM leads to trouble.

    6. Re:Stop whining, start doing. by Fnkmaster · · Score: 3, Insightful
      This should be modded up. When we layer on constraints to a development project, eventually you will ALWAYS hit the point where the project becomes impossible UNLESS you are willing to relax some of the constraints.


      I have fought both sides of this battle as a technologist and manager, and I agree massively that a technologically competent manager does make a huge difference, because they can map out the business needs communicated to them and make constraint/trade-off decisions informed by a better understanding of the possibilities and real technological effort involved in implementation.


      Of course, the problem is that there is often somebody above the technically-astute manager who still doesn't know what the fuck is going on, and then the battles just ensue another level up. Unless the company happens to be organized like a _real_ software development shop, which is pretty rare these days.

    7. Re:Stop whining, start doing. by agutier · · Score: 1

      Agreed. Often times it helps to sit down with non-technical people and remind them that you too believe that the customer comes first. As trite as that may sound, starting a converstation with that sentiment will change their attitude to your comments dramatically. Really, I've had breakthroughs with the non-technical management when I have said, "I want to get this to market as soon as possible, so here's what I think we should do..."

    8. Re:Stop whining, start doing. by kungfooswade · · Score: 1

      Amen.

      I worked for a somewhat successful mom-and-pop ISP for the last two years. The company had been very successful at providing networking, connectivity, and lan administration for local companies. But when it came to web-application development the owner had stars in his eyes and no idea what it took to plan out, code and test. Since I was the only web programmer there he worked me like a dog but then would bitch at me for taking too long and over budget after I had tried and explain countless times over many projects the details of what I was doing and why it was necessary or else. Needless to say I cracked after about 2 years.

      Currently I am back in school and the next time I go for a job interview I will DEFINITELY question them, i.e. the managers, about their level of knowledge, working history with the developers, and expectations.

      --
      At midnight, all the butchers And the cafeteria crew Go out and chop up all the cows For beef & guinness stew...
    9. Re:Stop whining, start doing. by Anonymous Coward · · Score: 0
      When a techie says it can't be done. 9 times out of 10 (s)he means it can't be done under the current constraints. Thease break down into time/features/money.

      No, usually this means someone can't find a canned solution and doesn't want to get off their pasty white ass and do what they're paid for instead of acting like an in-house salesman for every $5000 product that saves 10 hours of work.

    10. Re:Stop whining, start doing. by Anonymous Coward · · Score: 0

      boss says. walk on water.
      tech says. umm.. cant do it.
      boss says but i promised the customer that we would walk on water.
      tech says.. do we realy have to walk on water or can it just Look like we do..
      boss says looking good is all we need right now.
      tech says ok we build a brige that is about 1 inch under the water level. it will work. but i realy hope the water level doesnt rise...

      customer sees the demo.. Great now with your WaterWalking technology we can ship our goods any one of thes 50 islands! yay!.. then they find out how it realy works.
      Tech says.. had you told me what you were realy trying to do I would have told you we should built a boat.

    11. Re:Stop whining, start doing. by JordanH · · Score: 2
        • As a manager I get very tired of hearing about the programmers, sysadmins, etc. complaining that such-and-such can't be done, or otherwise blocking progress. Much more often than not things that "can't be done" just require a re-statement of the problem and some creative application of simple ideas.

        When a techie says it can't be done. 9 times out of 10 (s)he means it can't be done under the current constraints. Thease break down into time/features/money.

        If you can vary the constraints then you will find that most objections will dissapier.

      I can see both views here. Too often, people have a kneejerk reaction to change. It's so much easier to analyze things negatively, shooting holes in a plan rather than putting out suggestions on how to get around the obstacles. You sometimes get in an environment where people are afraid to make positive suggestions for fear of being attacked.

      On the other hand, a lot of clever ideas to implement something often lead to a hodgepodge mess that's unsupportable and only approximately works part of the time.

      The real problem, I think are managers who think like as reported here:

      As a developer I've found that most management-types don't give a hoot about technical details, or much of anything else that a heads-down developer might care about.

      Management types who don't care at all about technical details are one of the biggest problems technical people face. They proliferate systems and arrangements that just aren't technically sensible. They shop around, finding someone who says "well, yes, what you are asking can be done... but <good technical reason why that's a bad idea>" and give not a hoot why it shouldn't be done.

      Managers of technical people need to "give a hoot" about technical details. They don't have to have a deep understanding like an expert, but they should care that there are tradeoffs and potential problems.

      Can you imagine if this statement could be applied to the Accounting Department? "Most Managers don't give a hoot about money and numbers, just as long as you can make them fit into the management's objectives, that's all that's important." That attitude would be criminally actionable. I think it's similarly criminal for technical management not to care about technical details.

    12. Re:Stop whining, start doing. by HeyLaughingBoy · · Score: 1
      As a manager I get very tired of hearing about the programmers, sysadmins, etc. complaining that such-and-such can't be done, or otherwise blocking progress. Much more often than not things that "can't be done" just require a re-statement of the problem and some creative application of simple ideas.


      I've found that the simple solution to this is for developers to know why a requirement is a certain way instead of just "do it that way." Very often I come across impossible/conflicting requirements and the resolution is obvious when I understand the reasons for those requirements. More often than not, they can be modified with no end harm and then easily satisified.

      But the bigger picture is Company Culture (tm) I've had the pleasure of always working for engineering/scientific based organizations my entire career, and there has almost always been a push for high quality rather than "just ship it now, fix it later" (though I remember one spectacular exception :-). If the organization is focused on doing things "right" i.e., proper development processes, avoiding deathmarches before they start, working as teams instead of just mere lip service to the concept, etc., development tends to progress much more smoothly.

      It is important to remember that when the developer communicates with the PM, technical or not, the PM is going to be more interested in hearing suggestions for working around the problem you found (along with your time estimates for the various solutions) rather than just "we can't do this stupid requirement because..." and walking away from the problem.
    13. Re:Stop whining, start doing. by Tablizer · · Score: 2

      (* Be prepared to give out some 'write ups' that show a very clear train of thought and that make a clear recommendation up front, with backup material and dialogue exploring alternatives explaining why the recommendation makes sense. *)

      What I find is that many managers just don't want to read nor think. I can justify an idea on paper down to every hair, but that means diddly if the manager does not want to think nor read it.

      That is the biggest difference between a true nerd and a PHB. Real geeks *like* to think and explore ideas and approaches and compare and debate.

      PHB's just want to somehow use their well-honed social skills to get around having to think. They want to (try to) use people skills to solve technical problems, and it often does not result in the best approach.

      If you don't want to think, compare, and ponder, then get the fuck out of the way of those who do. Otherwise, you will just frustrate us into grey hairs and create un-needed tension.

      Geeks hate pretenders.

    14. Re:Stop whining, start doing. by The+Cat · · Score: 2

      In other words, be a super-programmer, work three times as hard and have a big smile, BIG SMILE...

      ...so the management will look good.

      Then everyone was laid off. Sounds great.

  4. They told you no because you knew *too much*? by ObviousGuy · · Score: 2, Insightful

    Have you demonstrated leadership ability through mentoring or project leading?

    Do you communicate with customers well?

    Do you appear as someone who would be a Santa Claus manager?

    Is your upper management (not your immediate superiors) a bunch of clueless morons? Do they have strong points that make them suited for the leadership positions that they hold?

    If you are looking to be in a leadership/management position, it would be better to stay where you are and learn the ropes, IMO. So many managers come straight out of development at one company and louse everything up at their new company as inexperienced PMs. Unless it's been made clear to you that the only way you're going to move into management is by killing a current manager, stay put and look for opportunities where you can.

    Talk with the boss, if the company is not so big that you are completely alienated from the upper management then you have the chance to befriend those people and politick your way into an authority position.

    Yes, we all know that leadership positions should be based on knowledge and track record and all those other good things, but in reality, you'll never get the positions you want unless you can make the right people understand exactly what you want.

    --
    I have been pwned because my /. password was too easy to guess.
    1. Re:They told you no because you knew *too much*? by Isle · · Score: 1

      Right! So you can only become a manager if you know how to backstap your current manager?

      That certainly explains a lot to me.

  5. You're not alone... by Foozy · · Score: 1
    in having a bozo for a PM. You have plenty of company- just look at most any large organization and you will find the same thing.

    The Trick (TM) is to get you and your PM (even the whole company) to work on improving it's underlying processes and procedures.

    You need a clear Statement Of Work (hopefully up front), and clear procedures on how the entire project plan, development, testing, and delivery should work. It takes time, effort and sometimes blood, sweat, and tears, but it's worth it. You'll be more focused, more productive, and there will be fewer problems from start to finish.

    I'm personally of the opinion that good technical people do make good project managers, but only when they are not working as a developer on the same project. Mixing the two usually doesn't work.

  6. Don't mix management and architecture by rsmah · · Score: 5, Insightful
    The problem your firm seems to be facing is that you are mixing project management with system design/architecture. What's the difference you ask? Project management is the process of resource allocation, scheduling, budgeting and task tracking. System design/architecture is the process of figuring out what should be built and how it should be structured internally.

    Good project managers need a different set of skills than system architects. Project managers think in terms of timelines, tasks and dollars. Architects think in terms of system components, their interactions, user requirements and technology. While there are some people who can do both well, they are quite rare as they require fairly different ways of thinking.

    Anyway, I'll bet dollars to donuts that the resistance you face from upper management has more to deal with the fact that you put the system before the company. They want project managers that put the company (or client) first. Big suprise, eh? If you want to lead projects, explain how you (or rather, people like you) can help the company make more money or make the client happier while spending the same amount of money (which, should lead to more money for the company). It's pretty much as simple as that. Cheers

    1. Re:Don't mix management and architecture by mvanhorn · · Score: 1

      Even when you don't mix design and architecture, having a clue helps. Does the PM know how many people it will take to implement a task, or even what's involved in the task? Do they know Brooks' law? In my experience 9 out of 10 Pm were consummate BS artists, that knew how to cover their ass and dodge a bullet. The other 10% have been really, really excellent - but most of those have a clue, being ex-techs.
      My background is in architecture of the tall building variety, and in that field, the architect is responsible for quite a bit of the project management. It doesn't matter if he can't hammer a nail himself, but if he doesn't know what nails are used for, you'd be worried. This is how most web PMs are. They know nothing about the project the are working on, and they do the software equivalent of arranging the furniture before the walls are up.
      I go so fed up with the situation towars the end of my job that I wrote this. Although the pretty version is not online yet...

    2. Re:Don't mix management and architecture by Anonymous Coward · · Score: 0

      I am a Solution Architect. The best PM I ever worked with understood their role as representative of the accounting side of the business. We worked as a team. I didn't solution something without asking her about its effect on the budget, and she didn't commit to change requests without my input on feasability and strategic direction.

      I want to work with more PM's like her.

    3. Re:Don't mix management and architecture by jeffreyhamby · · Score: 1

      The problem your firm seems to be facing is that you are mixing project management with system design/architecture.

      I am a contract developer and sometimes an architect, and wholeheartedly agree. The problem with that is most companies, even large ones, think PM and architecture go hand in hand. If that's the case, then yes, a PM needs a technical background. If that's not possible, then the lead developer needs to meet with the PM, and step up and take the architecture role. In my experience, anything else leads to project failure wether that failure be in the time to deployment or in functionality of the project.

  7. Personality Check by inonit · · Score: 1

    Most of the clients I've worked with have had project managers of two types:

    (a) No technical experience,
    (b) Outdated technical experience.

    The best project manager I've worked with was probably one from category (a). Category (b) project managers tend to be dangerous because they have a superficial understanding of what you're doing and (1) can't understand why it could be hard, or (2) can't understand why you need to use all these new-fangled techniques like object-oriented programming and refactoring. I've only worked with one person who had up-to-date technical experience but he had little power for other reasons, so hard to generalize.

    The fact that you recognize that your PMs may be making inappropriate commitments, etc., may mark you as someone who wouldn't fit in well at some organizations. The basic cycle seems to be that the PM gets pigeonholed at a meeting with muckety-mucks and is asked leading questions like "can this be done in a month?" Not knowing, and afraid to tell the important muckety-muck "I don't know, I'll need to get back to you," the commitment gets made. Then they come back to you, intending to force you to get it done. Or they already know it can't get done but intend to show a tremendous amount of effort toward the goal to "prove" to the muckety-muck that it was impossible. ("Everybody worked 70-hour weeks for a month and it still wasn't done on time.")

    All of this is not really to criticize PMs -- it takes a brave soul to stand up to that sort of onslaught. The question is, will you be as good at dealing with higher-ups (who do not like to hear the word "no") as it sounds like you will be at dealing with programmers? The first audience is probably more important than the second to your professional success ... the "overcommitting" project managers I've known seem to be doing quite well.

    1. Re:Personality Check by mccalli · · Score: 2
      (b) Outdated technical experience.
      ...Category (b) project managers tend to be dangerous because they have a superficial understanding of what you're doing and (1) can't understand why it could be hard, or (2) can't understand why you need to use all these new-fangled techniques like object-oriented programming and refactoring.

      Have you considered that you might not actually need to use all these 'new-fangled techniques'? And that your out-dated project manager might know that, since they have experience of doing similar tasks without the need for those techniques?

      Beware the CV-driven project (or resume-driven project, to use the American form). It has every wonderful technique under the sun attached to it, with the latest and most exciting tools.

      Almost always fails. Almost always ends up being rewritten at the last minute, dropping lots of the high-flying ideas and going back to more tried-and-trusted techniques. Worse, it normally has the older techniques shoved in under a superficial wrapper which is used to say that they're actually implemented with the wonderfully new techniques.

      Don't write off experience. Many project managers are rubbish, many have outdated field knowledge, but outdated field knowledge does not necessarily equate with rubbish project management.

      Cheers,
      Ian

    2. Re:Personality Check by pstreck · · Score: 1

      I agree with the first post completely on the item of outdated tech experience. I work for a large company (3500 employees) and write interal apps for the Palm OS platform. My project manager was a mainframe programmer for 20 years and the only programming language he knows is COBOL (if you call that a language). He has know clue about how an embedded operating system works, hasn't done any type of memory management coding since his asm class in college. He'll ask me why I miss a deadline and I'll try to explain to him the complexitys of implementing a relational database on a palm, but it goes over his head and all he wants is a date. Me being fairly new to the pro-programmer gig guesstimates and the hammer falls from way up top when i'm off. Now, shouldn't the project manager have enough technical experience to understand the application, and be able to estimate times and give me due dates? Or am I being to idealistic.

      --

      Later,
      Phil
    3. Re:Personality Check by Wiener · · Score: 1
      Me being fairly new to the pro-programmer gig guesstimates and the hammer falls from way up top when i'm off.

      You have to multiply your estimates by a factor of 4. How else do you expect to get a reputation as a miracle worker?

      8)

    4. Re:Personality Check by mccalli · · Score: 2
      He'll ask me why I miss a deadline and I'll try to explain to him the complexitys of implementing a relational database on a palm, but it goes over his head and all he wants is a date.

      Aaah, well my query to the original poster was: "Have you considered that you might not actually need these new-fangled techniques?".

      In your case, the answer to that question would seem to be: "yes - I have considered it and it seems that I actually do need to use those techniques".

      In other words, we're both covered!

      Cheers,
      Ian

    5. Re:Personality Check by inonit · · Score: 1

      I can see why you might have taken my comment the way that you did, and your point is well-taken.

      Yes, I certainly have seen the sort of projects you mention; I assume that by calling them "CV-driven" projects you mean that they are driven by the desire of the participants to enhance their own CVs.

      I also should have mentioned another sort of project manager (though I've never seen them holding that exact title) which reflects your point. "Our project must be n-tiered and XML-based; it must use components with well-defined interfaces. We should make sure the components are loosely coupled. Make sure that it's web-services-ready."

      Presuming you don't want to engage in a flame war about object-oriented programming or any of the "new techniques," I'll just point out that project managers with outdated skills tend to believe that object-oriented programming (for example) increases the complexity of a system, rather than decreasing it -- because they don't understand it. Another example -- they tend to believe that refactoring is bad. With the massive, monolithic, interdependent systems of the past, "you don't touch working code" made sense.

      Obviously these stands put them in a minority in the serious development community nowadays, and prevent staff from taking advantage of advances in the field. The improvements in development techniques over the last decade don't apply because of the PM's own slothfulness in keeping his/her knowledge current.

      The flaw you point out is real. Trying to make procedural developers write object-oriented code because you read an article in CIO magazine telling you OO was the future is silly, like you say, and leads to the failed projects you cite. But I've seen PMs make OO developers write procedural code because their skills are 1980s-vintage. Bad idea also; a PM shouldn't prevent developers from exceeding the PM's own development skills. Agree?

    6. Re:Personality Check by mccalli · · Score: 2
      Yes, I certainly have seen the sort of projects you mention; I assume that by calling them "CV-driven" projects you mean that they are driven by the desire of the participants to enhance their own CVs.

      Yes, that's what I meant. It's rampant in the area of industry I work in (I'm a contractor in the financial sector).

      I also should have mentioned another sort of project manager...

      Recognise that type too. We have some projects going on like that at the moment - huge, daft systems are built for what is essentially no more than taking a user's input from a client-app and writing it to a database. It's not even a distributed app, and yet it has been written with an n-tier approach and implemented in .Net. Hmm.

      Presuming you don't want to engage in a flame war about object-oriented programming or any of the "new techniques,"

      Absolutely not. No - I think your reply is a well-reasoned one with which I have no disagreement. My point, which you have understood and seem to have agreed with, was that I see sooo many projects start up with the the aim of using the latest stuff when a far simpler methodology would be more appropriate.

      I'm not exactly a veteran, but I've been a professional coder for ten years now (went into contracting because I didn't enjoy the idea of becoming a manager but still wanted my pay to increase). I started of with Mac System 7 and C, have done some small amount of Windows coding, then C++, then Unix and C, C++, Java, shell scripts, Perl...anything really. Anything appropriate. Obviously along the way I've learnt new techniques - the move from C to C++ being one example (procedural to OO). I'm far from against learning new techniques. It's just that I'm only in favour of using them when they're actually needed.

      Another example -- they tend to believe that refactoring is bad. With the massive, monolithic, interdependent systems of the past, "you don't touch working code" made sense.

      Hmm. Still does make sense to an extent. It depends - if you are going to need to use that code again and it now needs to fit into some new framework, then yes - refactoring is good. However, if it's just going to sit there and run for the next twenty years then why rewrite? It might offend the aesthetics of decent programmers, but if it works then leave it alone.

      An example. I've been handed a ton of Perl scripts to look after. They were written by someone who was learning the language as they went along and are, frankly, dreadful. The guy who wrote it accepts this too. I've rewritten various parts of this, improving as I go along, but some parts remain in the dark ages and I'm very unlikely to ever improve them. Why? No need. They work, they will never be used outside of their task (they're database feed scripts - parsing a fixed format file from a proprietary system and just dumping the results into tables), so even though they're ugly as sin I will leave them alone as they're not worth rewriting.

      ...The improvements in development techniques over the last decade don't apply because of the PM's own slothfulness in keeping his/her knowledge current.

      Yes, now this is just plain irritating. As I say, my coding armoury has been added to over the last ten years and I imagine I will need to add more over the next ten years. Things don't stand still. Everyone has their real-life example bugbears about this - my current is use of threading in client apps. Makes things -so- much more responsive from the user's point of view, but many people are scared of threads and won't allow them in.

      ...a PM shouldn't prevent developers from exceeding the PM's own development skills. Agree?

      Agree.

      Cheers,
      Ian

    7. Re:Personality Check by inonit · · Score: 1

      Well, we've narrowed the discussion to one point, then: refactoring. It sounds like we probably agree on that, too.

      Me (derisively): "You don't touch working code"
      You: "Hmm. [That statement s]till does make sense to an extent."

      I definitely agree that refactoring is an investment which has a cost and a benefit. If a piece of code isn't going to be touched again, it shouldn't be refactored.

      There are two phenomena I was thinking of when I made my complaint:

      (a) You have produced demo-quality code which appears to work, and a PM believes that any time spent improving it is wasted. The development staff wants to refactor for two reasons. First, they're going to be doing the next version and recognize that a little up-front effort goes a long way. Second, they know that bugs probably exist because the code is crufty and want to make them easy to fix when they're uncovered. PMs have such overwhelming short-term incentives that they make the wrong decision for the organization and insist development is "done."

      (b) The code already doesn't "work," and a developer is asked to go in and fix a bug or make an enhancement. Overwhelming political pressure is applied to make a purely local fix rather than disturbing the overarching structure. ("Now that you've developed the fix, you should be able to do a search to find the 176 places where it is needed, and copy-and-paste it in. Should only take about a day, right?") I think this results from three influences: (1) The short-term incentive problem, (2) the old procedural programmer's fear of touching existing code, (3) whoever wrote the code is still around and that person's reputation is being protected.

      I still think that in professional development shops (although I've rarely worked with software companies; mostly banks etc. like you mention) refactoring is done too little, rather than too much. Fear of refactoring has caused enormous problems in my client organizations. And it's funny I would say this -- I'm a consultant, so I'm not even around to see the long-term damage! If the client is already suffering damage while I'm still there, I can only imagine how bad it must get a couple of years out.

    8. Re:Personality Check by mccalli · · Score: 2
      Well, we've narrowed the discussion to one point, then: refactoring. It sounds like we probably agree on that, too.

      Yes, it seems we've achieved that rarest of things - a well-reasoned Slashdot thread ending in consensus!

      I definitely agree that refactoring is an investment which has a cost and a benefit. If a piece of code isn't going to be touched again, it shouldn't be refactored.

      And that it is the point at which we agree. You see, when I started I used to be all in favour of rewriting anything ugly or inelegant. Anything. Never really thought about the fact that whilst I was doing that I wasn't doing something else.

      I'm pleased to say that it still pains me to let old rubbish continue festering - losing that pain would essentially mean that I no longer cared about good code, and I do care about good code. However, I'm now quite a bit more aware about software's place in life and what more appropriate priorities are from the business's point of view. After all, they're paying for me. True for every coder, but the relationship is even more direct in the case of a contractor.

      And it's funny I would say this -- I'm a consultant, so I'm not even around to see the long-term damage!

      Not sure about this, but I think you're using consultant in the same sense I'm using contractor - it seems to be a US/UK jargon split (I'm in the UK). My title is consultant as well - basically a hired analyst/programmer who not employed directly by the company but instead is paid via a service contract (n-months to do x task, option to renew on both sides).

      Anyway, to wrap-up from my point of view it seems as if we've not got a great deal of difference between us. Seems we both feel that:

      • Use of new techniques for new techniques' sake is bad.
      • Use of new techniques because they're actually better and more appropriate to the task in hand is good
      • Project Managers that use new techniques for buzzword-compliance are bad
      • Project Managers who refuse to consider use of new techniques are also bad
      • Rewriting (or refactoring) software which will be used again or which needs to fit into a wider framework is good.
      • Rewriting software which whose task will never alter is of questionable value
      Seems like a balanced viewpoint to me.

      Cheers,
      Ian

  8. Start your own company ;-) by DeBaas · · Score: 1

    I did!

    But I do know your problem. The problems with skipping testing and implementation is useally not caused by lack of technical knowledge.

    The problems is IMO more a project management problem. In the projects I was working, useally the problem was laying the deadline on delivery date. In stead of on the date when the tests are supposed to start.

    Time for testing etc. all to often becomes slack. This is because nobody 'represents' the testing period.
    The delivery date useally is hard. Either because the product has to start making money or you have a customer that demands delivery.

    --
    ---
  9. Tom DeMarco books by soegoe · · Score: 2, Insightful
    Give your managers a copy of Tom DeMarco's Peopleware. And include his novel The Deadline for a bit of light reading. :-)

    Some books on Extreme Programming might help, too. Even if you do not plan to use it, they show how to share responsibilities between management and programmers. It all boils down to:

    • Management decides what will be done (business value blah blah).
    • The programmers decide how long it's gonna take
    • Management sets the priorities.
    This helps to avoid impossible deadlines and to keep up with high quality.
    1. Re:Tom DeMarco books by richieb · · Score: 2
      DeMarco's new book Slack should help too and maybe Steve McConnell's Software Project Survival Guide.

      --
      ...richie - It is a good day to code.
    2. Re:Tom DeMarco books by DNS-and-BIND · · Score: 2

      Oh, yeah...instead of your project managers making you implement the latest buzzwords, turn the tables on them and make them mouth *your* favorite buzzwords instead!

      --
      Shutting down free speech with violence isn't fighting fascism. It IS fascism!
    3. Re:Tom DeMarco books by T.E.D. · · Score: 2
      Give your managers a copy of Tom DeMarco's Peopleware.


      While you are at it, read the book yourself. You will find that there is nothing in there about being good technically. That has nothing to do with a project manager's job.

      I'm not saying you wouldn't be a good project manager. But if you are, it has nothing to do with how technically astute you are.

      Most people who are good technically would actually not like being managers, because their awesome technical skills would be completely wasted in that role. How much fun does a day completely filled with playing with MS Project and Powerpoint, and attending meetings, prying resources from other groups, and walking around talking with your staff sound to you? If your interpersonal skills, listening skills, and leadership skills aren't up to snuff, it would be even less fun for you.

      Of course, just because your managers aren't technical doesn't mean they are any good at this stuff either. :-)
    4. Re:Tom DeMarco books by Anonymous Coward · · Score: 0

      I would second that, the kind of tasks managers get to do are very different to the kind of tasks programmers do. I don't think it's the case of managers being "better" than programmers (although they do drive bigger cars :-(((, just that the skill set is different.

      Someone who is very gifted technically would find this to be a real barrier to "ascending" into management, as no matter how good they would be as a manager, they would be wasted there.

      A few of the managers I know would give their back teeth to be coding again, as it is far more enjoyable for some. Perhaps managers get paid more since it's a dirtier and more stressful??

      But I do think being technical is an advantage for a manager, since it allows you to understand what your programmers face and allows you to communicate with them better.

  10. project management by weg · · Score: 1, Funny

    Sorry, but I think your project manager is completely right. People don't want programs that work correctly, they want programs that look good. Indeed, the "blue screen" would be much more popular if its design would be more appealing (users would try to crash the system as often as possible if blue screens were replaced by cool animations with a great sound).

    --
    Georg
    1. Re:project management by Quasar1999 · · Score: 1

      Ummm, not that I ever used a MAC, but they have had a neat little bomb pop-up when something went bad. And I didn't see people trying to crash the system just to see the bomb animation.

      --

      ---
      Programming is like sex... Make one mistake and support it the rest of your life.
    2. Re:project management by cburley · · Score: 1
      I didn't see people trying to crash the system just to see the bomb animation.

      Really? I've seen people doing that, and done it myself, by simply using the computer for hours on end. That approach just didn't work so well on the Mac.

      But it worked great for Windows, so it's worth a try.

      --
      Practice random senselessness and act kind of beautiful.
  11. There are alternatives out there by Aging_Newbie · · Score: 1

    A few years ago I worked for Keane, a company that REQUIRES that programmers learn basic project management and then encourages them to play a role in managing the projects they are working on.

  12. Get certified and go to the local PMI meetings by bons · · Score: 4, Informative

    PMI has all you need to know about certification and there are PMI meetings just about everywhere". Attend a few of those and you'll either be networked enough to improve things or fins a better job.

    1. Re:Get certified and go to the local PMI meetings by Anonymous Coward · · Score: 0

      That would be difficult for him to do since he has no real PM experience. PMI requires a certain number of hours doing project work using their body of knowledge. This time requirement depends on whether he has a degree or not.

      Doug

  13. In a nutshell. by Fross · · Score: 5, Insightful

    One thing both you and the project manager need to understand is:

    The project manager deals with the business side of things.
    The technical lead deals with the technical side of things.

    So while he may be setting (or have forced upon him) aspects such as deadlines, you need to control scope, methodology and quality. Communicate with him constantly. Imply (if not state explicitly) that you need to work on resource allocation, something he may be trying to plan for you right now. to have everything stated down on paper is best for both of you, you can at least then agree or disagree and sort things out.

    It may also help to implement a proper development strategy you can agree on - if he won't listen, just escalate the issue. One that is tried and tested is a good bet, whether it's Extreme programming (a good suggestion) or something coming from the business side of things.

    Whichever it is, the problem here seems to arise from a lack of definability of responsibility and roles, and that's what needs to be set and agreed upon so you can both do your job properly! He's probably as exasperated at you at the moment ;)

    Fross

    (a technical architect working as a project manager!)

    1. Re:In a nutshell. by bluebomber · · Score: 1

      So while he may be setting (or have forced upon him) aspects such as deadlines, you need to control scope, methodology and quality.

      Good point, but I'd disagree with the piece about quality. This is sometimes so much a technical decision as a business decision, although quite often it is a delicate balance between the two.

    2. Re:In a nutshell. by Fnkmaster · · Score: 2

      You either need a person trained and experienced in both roles managing a project, OR you need two people with equal status in the company who can work closely together without killing each other.
      I've seen lots of structures for doing this. Some work, many don't. Also "project management" at some organizations corresponds to annoying schedule keepers rather than decision makers who recognize and decide on trade-offs, and requirements come from a different group entirely. These are some of the most broken organizations on earth.

    3. Re:In a nutshell. by olethrosdc · · Score: 1

      Do also look at the very nice little booklet series for "Extreme Programming" - it has very nice suggestions on integrating project management and techincal leadership, making the leads part of the team and other nice and subtle points that may not be so obvious sometimes. Examples include coaching roles for the sys-arch, extensive interaction with the PM to get highly restrictive deadlines lifted, and other nice examples.

      In the end, remember that a PM will have to spend a lot of time dealing with upper management and costumers - barely leaving enough time to organize time allocation and consult with the sys-arch, never mind looking at all the possible implementation/architectural considerations.

      All of our company managers (upto and including the continental division head) were tech-guys. They did a horrible job.

      --

      I miss my rubber keyboard.(Homepage)

  14. Only bad managers demand the impossible by Skapare · · Score: 5, Insightful

    I've had managers before that varied from well experienced, technically, to not at all. Rarely was I asked to perform the impossible. And in those cases where it was impossible, it really was impossible. I simply pointed this out to the manager ... and I explained in detail why that was the case. In all cases things got corrected. Maybe I'm not so closed-minded as some techies out there, and I know most everything is possible. The better managers I found came to me with the ideas of what they were considering doing, and asked me to prepare a report on the feasibility and costs (mostly in hours of work) of doing it. I usually included an impact analysis as well. But you can be sure that if I tell my manager that it is impossible, then it really is impossible. Usually the truth is "it'll cost ya". Maybe techies need to learn to say that more often.

    --
    now we need to go OSS in diesel cars
    1. Re:Only bad managers demand the impossible by Surak · · Score: 5, Insightful

      But you can be sure that if I tell my manager that it is impossible, then it really is impossible. Usually the truth is "it'll cost ya". Maybe techies need to learn to say that more often.

      There's the key to successful project management right there.

      As programmers, we know that you can optimize on three things: delivery time, peformance (speed), and features. Pick any two. :) Everything is a tradeoff. If you want me to deliver this program quickly and have a lot features, then I'm going to have to write major bloat code to give it to you, AKA The Microsoft Way. If you want features and optimum performance, this is going to take some time (one reason why so many Open Source projects seem to lag behind schedule.)

      Knowing that is the key...and being able to explain that to upper management is the other key.

      "Oh, you want XYZ feature? That's going to take us another three weeks to deliver and we'll need a budget increase of ."

      And a project manager that doesn't know that will have to work closely with the programmers on the project to determine these constraints. A project manager who's done programming, OTOH will already know the difference, and she will have to be the one that learns to say "It'll cost ya." The project manager is the link between management and the technical team. And that person needs to be able to speak BOTH languages.

    2. Re:Only bad managers demand the impossible by codeButcher · · Score: 1

      You're so right - but this boils down to techies doing a little bit of project mangement, albeit on a task-by-task basis (well, a good project manager should know how to delegate after all. :-)

      The problem is, techies are not usually equipped to do even this. Especially when fresh, your time estimation can be far out. So the company should make allowance for this (the whole CMM thing about "learning organisations"):

      • PM's and techies need to communicate about tasks and requirements.
      • Allowance should be made for unknowns and slips - once a project plan is drawn up, it isn't cast in concrete and replanning/contingency planning/risk management should be part and parcel of project management.
      --
      Free, as in your money being freed from the confines of your account.
    3. Re:Only bad managers demand the impossible by calibanDNS · · Score: 3, Informative

      You've had a much better experience with this than I have. I've only had one instance so far where I've had to tell the PM that it was impossible but the problem was that he didn't believe me. His reply was "So, you don't know how to do this?" so I gave him a mathematical proof as to why it was possible. This PM has a Masters in Strcutural Engineering from a well-respected university, so I thought that should be enough, however he simply crumpled it up and told me that he would write the code since I obviously didn't understand what he wanted. A couple of months later he raises the issue with me again and tells me that he is having trouble implementing it. Knowing that he is going to ignore my proof if I show it to him again I came up with the most basic and realistic data set that I could that would be unsolvable. I then asked him to try solving this data set by hand. Two days later when he came to me and told me that he didn't think it was possible I had to fight very hard to hold back the "I told you so" because I was hoping that this incident would convince him that in the future if I say "impossible" then he should consider the possibility of something really being impossible. Unfortunately nothing has changed and I am now looking to change jobs.

      Anyone know a company that doesn't treat its developers like morons and that is hiring?

    4. Re:Only bad managers demand the impossible by Aceticon · · Score: 4, Insightful

      You're assuming that you actually have a project manager that's smart/experienced enough.

      Some project managers when confronted with the "there's a trade-off here" explanation will either:
      - Not trust you at all, because they think you are trying to make time for yourself (ie they think you're lazy).
      - Not trust your judgement and think you are overestimating the time it will take to do it (ie the "this looks so simple" syndrom - also common with users)
      - Try to get you to work long hours in the (mislead) belief that if you work more hours a day the change can be made in a smaller number of days (it works for maybe 1-2 weeks, then your productivity starts declining)
      - Insist that somehow (nobody knows exactly how) the whole change must be made within a certain (shorter than you think is needed) timeframe (usually they've already promised it to upper management and/or the costummer)
      - Get you to choose what trade-off should be made (this is my personal favorite - the manager is in practice asking you to manage. Just shows how usefull some managers are)
      - Any combination of the above

      Unfortunatly and contrary (or maybe not) to popular belief, those sort of managers don't actually get fired. Usually they tend to stay forever in a lower management position (ie directly managing the developers)

      <SELF-COMMAND RANT-MODE="OFF"/>

    5. Re:Only bad managers demand the impossible by Wiener · · Score: 1
      Anyone know a company that doesn't treat its developers like morons and that is hiring?

      Try this one.

    6. Re:Only bad managers demand the impossible by Fulcrum+of+Evil · · Score: 2

      Ahh, cruel, bitter, irony...

      --
      "We returned the General to El Salvador, or maybe Guatemala, it's difficult to tell from 10,000 feet"
    7. Re:Only bad managers demand the impossible by gallen1234 · · Score: 2, Insightful

      Rarely am I asked to do something that's truly impossible. I've always taken the position that it's not my job to say "no" to my manager. Rather, it's my job to say, "Yes, and this is what it will cost you."

    8. Re:Only bad managers demand the impossible by Beliskner · · Score: 3, Insightful
      Two days later when he came to me and told me that he didn't think it was possible I had to fight very hard to hold back the "I told you so" because I was hoping that this incident would convince him that in the future if I say "impossible" then he should consider the possibility of something really being impossible. Unfortunately nothing has changed and I am now looking to change jobs.
      If you're going to leave the company, shout at the manager first, I mean SHOUT. You should have said "I told you so, you've wasted 3 months of project time, the customer is gonna be very unhappy. I'm reporting this incident to upper management." Take your crumpled up proof with you. You can always go over peoples' heads, if upper management likes you nobody is gonna let you go and your manager will get fired. These CEOs don't get paid > $millions for sitting on their asses.

      Best case: Take him out. Take a counteroffer from another employer to your CEO and get a pay rise for yourself
      Intermediate case: Take him out, he pulls strings and takes you with him (you're gonna leave anyway so you've got nothing to lose, plus you get the satisfaction of ruining his life)
      Worst case: You get taken out (you're gonna leave anyway so you've got nothing to lose)

      --
      A caveman dreams of being us, the incalculable power and riches. We dream of being Q, then what?
    9. Re:Only bad managers demand the impossible by Grab · · Score: 4, Insightful

      Make sure everyone knows what estimates you gave. Or if you can't make the higher-ups aware, make sure your estimate and your disapproval of your boss's new estimate are recorded in an email to your boss. Then you take as long as it takes, and when it overruns and fingers are pointed at you, you say "I told you so" and point them to the evidence. And if you get fired/downgraded for that, there's a nice little sum waiting for you at the industrial tribunal when you bring that "constructive dismissal" case. ;-)

      Re the trade-off thing, again you need to get written down what the results will be, and send it to your boss. Preferably also CC it to his boss. If the trade-off will mean more bugs, then write it down. Then when there are bugs, you have some comeback by saying "I was forced to release this code without having tested it, even though I said what the consequences were".

      BTW, don't forget to check the "notify on read" and "notify on receipt" boxes when you send the email, then you actually have proof that (a) it got there, and (b) he read it. If he later claims ignorance, or says "Outlook must have eaten it", you've got evidence otherwise. Emails are your evidence when the shit hits the fan!

      There are some bad managers out there. If you get one, don't be afraid to go over his head and talk to his boss, or to your personnel manager. You have a right to do that if you have a complaint about him.

      And if all else fails, find another job. Seriously. If the management at your place doesn't value you, get the hell out.

      Grab.

    10. Re:Only bad managers demand the impossible by Aceticon · · Score: 1

      That's actually my MO. It's just that it took me a couple of painful years before i could get it right.

      (I almost feel sorry for my manager 2 years ago - she was the first one getting hit full force by my defensive actions. Nowadays i'm not as mean ...)

      Anyways, i feel that there are a lot of briliant but green techies out there that are suffering under bad management because they lack the necessary social skills/experience to know how to defend themselfs.

    11. Re:Only bad managers demand the impossible by Anonymous Coward · · Score: 2, Interesting

      As programmers, we know that you can optimize on three things: delivery time, peformance (speed), and features. Pick any two. :) Everything is a tradeoff.


      When my current manager informed me, a month before the project deadline, that oh-by-the-way, the program would have to be distributed on separate systems *on segregated networks*, and I took a deep breath and tried to meet him half way, he put held up his finger to silence me. He turned to the whiteboard and wrote the word NEGOTIATION on it. Then he turned back to me and said, "This is NOT THAT. I am the manager. I do not negotiate."


      That's why, with a week to the deadline, I've been on slashdot all day. Treat me like shit when I'm trying to help you out? Fine, OK, you don't respect me, I won't respect you, and guess what? You're not going to really motivate me to do my best work. And if you obsessively time my daily arrival/departure times TO THE MINUTE, I don't think I'm going to be volunteering to work many more unpaid weekends of overtime.

      Anyone looking for a Perl/Linux/security geek in the London area?

    12. Re:Only bad managers demand the impossible by Anonymous Coward · · Score: 0

      As programmers, we know that you can optimize on three things: delivery time, peformance (speed), and features. Pick any two.

      Here's the good news - Program Managers know the same thing. They (we) are taught (and use) the "triple constraint." As business entities (the "customer" for project managers) say they want new features, PMs need to weigh the requests and push back based on (all together now) Time, Cost, and Resources. "You want something added? I'll need either more time, more money, or more people."

      Remember, too, that PMs don't come up with feature requests themselves. Something like this should help: "Sure, we can do that if that's what the customer wants, but have you gotten more [time/money/people] from our customer when they presented their request?"

    13. Re:Only bad managers demand the impossible by Sciamachy · · Score: 1

      It's the key to successful time management generally - whether you're a project manager or team member. If as an individual you are honest about how long it's going to take you to do stuff, you're helping the project manager by letting him know accurately how the project is doing, and helping yourself because you won't get all the chicken-sh*t stuff that isn't really necessary to do.
      The other key to good project and self-management is vision & focus - if you focus on the goals of the project, and prioritise accordingly, junking the stuff that doesn't help the project, you'll become more effective within that project.

    14. Re:Only bad managers demand the impossible by mmcshane · · Score: 1

      Well said - I'd make one small change...

      "Oh, you want XYZ feature? Let me run that through our scheduling metrics and I'll tell you tomorrow what the [additional cost|deadline shift|feature tradoff] will be."

      Giving estimates on the spot as you hear of a new feature can be DEADLY.

    15. Re:Only bad managers demand the impossible by snow+leopard · · Score: 2, Funny

      Worst case: You get taken out (you're gonna leave anyway so you've got nothing to lose)

      Actually, worst case would be: you get taken out, he quits, gets a giant severance package and follows you to your new job.

    16. Re:Only bad managers demand the impossible by Anonymous Coward · · Score: 0
      As programmers, we know that you can optimize on three things: delivery time, peformance (speed), and features. Pick any two. :) Everything is a tradeoff. If you want me to deliver this program quickly and have a lot features, then I'm going to have to write major bloat code to give it to you, AKA The Microsoft Way. If you want features and optimum performance, this is going to take some time (one reason why so many Open Source projects seem to lag behind schedule.)

      A common myth.

      There is no general correlation between quick delivery and bloat code. I often contest this. People often associate quickly writing code and quick delivery which is a mistake. I find too often that this causes a design by evolution which in general takes much longer to deliver. The time it takes to create a design which accomodates most of the critical features and developing against that design is VERY OFTEN the fastest way to deliver and the most satistying for an engineering team. The second mistake is taking this quick design and not making the opportunity to throw it away and starting again.

      Then we get into definition of design where the meaning is SO varied that it's often difficult to make consensus on what a design deliverable is. So, this is where I start with my project management. It's defining the design phase deliverable. I try to make this design deliverable simple to achieve (e.g. Doxygen commented header files of interfaces and at least a single unit test that compiles but does not link or run ... yet) and of direct utility to the project. I can ramble on and on, but the point I make is that the trade-off between writing bloat code and quick delivery is not allways true and VERY OFTEN the contrary.

    17. Re:Only bad managers demand the impossible by anonymous_wombat · · Score: 1

      This guy has obviously worked at better companies than I have. The solution to your problem in my opinion is to find a job at a company where the management doesn't have its head up its butt. It is unlikely that reason will work with these people, but I would try (while I was looking for another job). When giving an estimate of how long something will take, always include test and documentation time. If the PM's are giving you a hard time about that, refuse to cooperate. If necessary, send out detailed emails refuting their time estimates, with your reasoning as to why their estimates are not right. Email the offending PM, and copy upper management. Be sure that you are aggressively looking for another job while you are doing this. One way or another, this will solve your problem.

    18. Re:Only bad managers demand the impossible by mnemotronic · · Score: 1

      Here's an impossible goal: "First, I believe that this nation should commit itself to achieving the goal, before this decade is out, of landing a man on the Moon and returning him safely to the Earth. No single space project in this period will be more impressive to mankind, or more important for the long-range exploration of space; and none will be so difficult or expensive to accomplish." -President Kennedy's Special Message to the Congress on Urgent National Needs. May 25, 1961 Asking for the impossible will cause frustration for those who can't comprehend anything beyond the status quo. Sometimes, non-linear thinking must be initiated by an appropriately directed kick in the butt.

      --
      The Russians have won. They have made the world a cesspool of distrust, greed, fear and hate.
    19. Re:Only bad managers demand the impossible by TedCheshireAcad · · Score: 2

      As programmers, we know that you can optimize on three things: delivery time, peformance (speed), and features. Pick any two. :) Everything is a tradeoff.

      Client: When can you have this project done? How much will it cost? Will it work?
      Developer: You have 3 options: good, quick, and cheap. Pick two.

    20. Re:Only bad managers demand the impossible by Surak · · Score: 5, Insightful

      When my current manager informed me, a month before the project deadline, that oh-by-the-way, the program would have to be distributed on separate systems *on segregated networks*, and I took a deep breath and tried to meet him half way, he put held up his finger to silence me. He turned to the whiteboard and wrote the word NEGOTIATION on it. Then he turned back to me and said, "This is NOT THAT. I am the manager. I do not negotiate."

      This guy doesn't know what he's doing. Any third year CS/CIS student can tell you that the only way you can be sure to get a systems development project done on time and on budget is to get ALL the requirements down before anyone writes the spec document, and well before anyone writes a SINGLE line of code. Otherwise, your project is most assuredly going to be wildly off schedule and cost way more than the budget.

      If I told you to write a quick- & dirty ANSI C compiler for some platform that needed one (and you couldn't use gcc for licensing reasons) for some reason, and then one month before the deadline I told you that oh, BTW, it has to compile C++, C#, and Objective C code too, you'd probably tell me that you had to rewrite at least half the code.

      That's because you started with the basic assumption that you were writing only an ANSI C compiler, and therefore didn't plan on any other languages in the interests of getting the thing done as quickly as possible.

      You know this, I know this, but it's clear your boss doesn't have a clue, and therefore shouldn't be managing professional software developers. I think you don't need to be a programmer to manage programmers, but you DO have to have a grounding the basic concept of programming.

    21. Re:Only bad managers demand the impossible by chris_mahan · · Score: 1

      It seems like the impossible, but from what I understand the amount of money thrown at this challenge was, ahem, astronomical.

      --

      "Piter, too, is dead."

    22. Re:Only bad managers demand the impossible by neutz · · Score: 1
      As programmers, we know that you can optimize on three things: delivery time, performance (speed), and features. Pick any two.

      A professor I had referred to this as the "Chinese Lanudry" rule of thumb. A sign hangs in a Chinese laundry. The sign says:

      1. Good
      2. Fast
      3. Cheap

      Pick Two

    23. Re:Only bad managers demand the impossible by Grab · · Score: 3, Interesting

      That's the thing - we don't have to suffer. We should know the technology well enough to ensure we can keep our asses covered.

      Of course, there's no need to be defensive unless your management really are a bunch of unscrupulous weasels! :-) If your managers are good (as mine are at my current job) then there's no need.

      My current place is pretty much a classic *good* example. Medium-size company (200-250 employees), flat management structure. You can trust the managers, right up to board level, not to stiff the employees - many of them have worked up from engineering positions so they know the score, and if you say "the customer's wrong, it'll actually take this long" then they'll fight your corner as far as it takes. And it gets real loyalty and real benefits for the company - we'll work longer hours and put ourselves out to meet a release (up to a limit, of course! ;-) bcos we take pride in what we do. I know I could move to a job 20 miles down the road for 5-10K more, but frankly I don't want to.

      Grab.

    24. Re:Only bad managers demand the impossible by MrResistor · · Score: 3

      I think you don't need to be a programmer to manage programmers, but you DO have to have a grounding the basic concept of programming.

      A grounding in the basic concepts of management would suffice here. This guy isn't a manager, he's a control freak whose only concern is his authority, and who doesn't give a rats ass about the actual project.

      --
      Under capitalism man exploits man. Under communism it's the other way around.
    25. Re:Only bad managers demand the impossible by IguanaTom · · Score: 1

      When I was leading a web team a couple years back, I had 4 projects I was already juggling with pressing deadlines and was asked to add yet a fifth. I explained my workload and that I didn't believe it was possible to get this next project done with the load already pressing my team and I was not met with understanding. A new less experienced team lead said that they could do it, so I kindly accepted this 'passing of the torch' kind of thing.

      The Director raved on and on how this other person was a real "team player" and a real "go to guy." It made me feel like a heal for quite some time until I ultimately quite. The project ended up coming in late and well over budget, but I was forever cast by management as a turd in the punch bowl.

      I think the key is to communicate openly and honestly, try hard, and if things don't work out, it was probably meant to be. Currently I'm doing very well. I left there and doubled (honestly) my income, but did have to take a position with less leadership and responsibilities to begin again with.

      I'm happy with how it worked out because I felt as if I tried hard and did a good job. Many of my teammates still email often about how things are and hope to work for me again. I know that it was their faux pas to do things the way they did, and I also know that I am better because of the whole thing.

      Work hard, play fair, and live by the golden rule. I don't think it is possible to have a bad life when doing these things. ... Of course I only can attest to my own experiences, and I don't recall any past lives.

      ~Igtom
      -> No sig file on record. -

      --
      I'm not addicted to the internet because I have a family to feed.
    26. Re:Only bad managers demand the impossible by mikemulvaney · · Score: 2

      You definately have something to lose: a recommendation. What happens when you get fired and need to get a new job?

      Interviewer: "You have been working at XXX for the last 3 years? Can I call someone there for a recommendtaion?"

      A: "No, my manager was an asshole and I burned all my bridges back there."

      Interviewer: "We'll be in touch."

      It might be really fun to go out in a blaze of glory, but most of the time it is not worth it. Now if you work at a smaller place, or have a lot of equity and actually care about the company, then it might make sense to go over your manager's head and try to get him fired. But most of the time it is easier to just find a new company, says I.

      -Mike

    27. Re:Only bad managers demand the impossible by mOdQuArK! · · Score: 1

      What's your point?

      A "rational" client will understand these tradeoffs & will work with you to establish a compromise between them.

      If you have an "irrational" client, then you're going to be miserable no matter what you tell them.

    28. Re:Only bad managers demand the impossible by Skapare · · Score: 2

      From a technical point of view, reaching the moon was not an impossible task at all. But it did require resources that the techies of the day would not have been able to get on their own, had some manager given them that directive. That was definitely a project that required not just gung-ho management, but also gung-ho politicians and gung-ho citizens.

      Now if only we could get President Bush to issue the special message that we need to have a national last-mile infrastructure to get 1.5 mbps to 99% of urban and 49% of rural locations by 2007, and 100 mbps to 95% of urban locations by 2012. Those are not unrealistic goals at all. And the best part is not only is this not impossible from a techie point of view, but the technology already exists. The issue is the commitment to deployment.

      --
      now we need to go OSS in diesel cars
    29. Re:Only bad managers demand the impossible by Beliskner · · Score: 1
      You definately have something to lose: a recommendation
      As Parent said, his manager only sees that he failed to solve the impossible problem. So his bridge is already burnt, he'll get a neutral recommendation at best.

      If he complains to upper management in writing then his grievance will be officially logged. He must say "my Manager was harassing me and physically assaulted me to meet my deadline". If he switches jobs or loses the job because of it he can come down on the company hard on the grounds of discrimination (not racial, but circumstancial like constructive dismissal). This is in the UK, in US this might be a little different.

      --
      A caveman dreams of being us, the incalculable power and riches. We dream of being Q, then what?
    30. Re:Only bad managers demand the impossible by duck_prime · · Score: 1

      Giving estimates on the spot as you hear of a new feature can be DEADLY.

      This is the truest thing I've heard in a long time. The engineering management disclipline of meeting schedules only works if the schedules are valid.

      Another thing to consider, however, is what actually happens in a real environment. You work for, say, itty-bitty-corp.com, and your main client (and possibly investor) mighty-corp tells you what your deadline is, based on whatever his own problems are.

      You can try to negotiate, but if you are a tiny subcontractor in a large project, no one cares what your problems are; they want results on the day they want them.

      This situation has sold more coffee and Jolt cola than any marketing campaign in human history.

    31. Re:Only bad managers demand the impossible by Anonymous Coward · · Score: 0

      Some project managers when confronted with the "there's a trade-off here" explanation will either:

      You are assuming this is because the project manager is crappy. My observations is that most of the time it's because the PM's boss's boss's boss has a huge bonus riding on on-time completion of the project, and the PM has 0 political ability to alter the schedule and let things slip.

      Therefore he and you are both sitting in the same pile of crap and pushing back on each other, when you both should be circulating resumes.

    32. Re:Only bad managers demand the impossible by Anonymous Coward · · Score: 0

      That's is kind of company I'm looking for. Managers who would look out for their employee, and employee takes pride of the company and their work.

    33. Re:Only bad managers demand the impossible by Lost+in+Code · · Score: 1

      And if all else fails, find another job. Seriously. If the management at your place doesn't value you, get the hell out.

      I wholly agree. I found myself in that situation once and switched jobs pretty soon.
      Maybe it's a result of my experience, but I feel that technical knowledge should be required in a manager otherwise they tend to force ridiculous deadlines on you and tend to bypass "details" like code reviews and rigorous testing to get the project done on schedule no matter how ugly and unmaintable the resulting code is.
      The suggestions you gave would be a way to combat this, but does that make a good work environment though? You are constantly at war with management. A manager who has been through the ranks of programmers would understand all the issues involved are and hence be a lot more sympathetic. I agree that a manager needs a wider skill set viz. project time and effort estimation, budgeting, maintaining team morale etc. but I think those skills come easier with a technical background (maybe not interpersonal skills though :)) and the insights gained from experience in the same area are very valuable.

  15. PM vs EM by pmenoud · · Score: 1

    Several functions are covered by the term Project Management: engineering management, techinal lead, management of project...

    If you complain about Project Managers, it is because your company uses them to do exactly that, manage the project: making sure that the deliverables arrive on time, more or less answer the request from end customers or Product Managers, and in return gather their input or feedback. A project is also the immobilisation of a great deal of money, and someone as to be responsible for that.

    That choice of the company calls for a counterpart of the Project Manager, with equal power in the "discussions", a Technical Leader which would enlight them in These Issues that are dear to your heart ;-) I mean the kind of discussions which also involve managers from documentation, quality assurance, even technical support (to ensure the future supportability of the product.), production manager...

    I guess becoming a project manager will not be the right answer to your concern...

  16. It definetly helps by bobdown2001 · · Score: 1

    If they at least have some background knowledge of the production process and the technology behind it.

    If your project manager lacks the knowledge to make imporant planning decisions early in the project they should at least know when to ask for help and opinions of those that do know ...... Only in my experience I've found that those without the knowledge don't even know when to ask :0P

    Our company (a very small web developer) recently underwent some serious downsizing, and not by choice. The first staff to go were the project management staff that had been screwing things up by misscommunicating issues with clients and making promises that could not be kept. Since then the more senior members of production staff have been left to manage themselves and the junior staff members.

    Not surprisingly there has been a lot less go wrong lately, our relationships with clients has improved in a big way, and our general reputation as a web developer is on the up.

    There are disadvantages to being a project manager that knows the tech side of things (eg. knowing when to deligate to others and not take on too much yourself), but IMHO get rid of the nimrods that don't know what the techies are doing and things will run a whole lot smoother :0D

    --
    Why do today what you can put off until tomorrow?
  17. Technical are worse! by Flu · · Score: 1
    A PM with a technical background is by no way a guarantee for better management; Actually, IMHO, the damages caused by a technical, non-leader-type manager can be far worse than those caused by a non-technical leader-type manager.

    The reason is, that a (good) leader-type manager is humble, acknowledges his own lack of technical insight and thus listens to his crew, while a technical manager might fully understand the schedule and risks, but is unable to resolve interpersonal conflicts, favour technical solutions instead of customer-requirements or simply fail to turn the upper-managements attention to important desicions.

    I work for a machine-manufacturing company, where software is just one of many ingredients of a machine, and mechanical design is very important. Thus, our PM (and many others in leading positions) is a mechanical engineer from the start, but he is very open to suggestions and arguments from us software designers and gives us lots of freedom.

    Despite his technical background, I rate him as a leader-type manager, because of his interpersonal skills and total lack of experience in research-driven projects.

    /Flu Software Designer

  18. My kingdom for competent management! by sexykitty · · Score: 1

    Alas, this is the story being played out in development shops worldwide. By all means you should make a move into management; you'll be worth your weight in gold. Once you are worth your weight in gold perhaps you'll look for a more receptive place to work as well?

    As most people who read slashdot know, there is a certain amount of personal interest involved that draws people into the computing field (because right now it's not the money or abundance of jobs). It's a totally different frame of mind that would draw someone to business and I personally don't understand that frame of mind. I doubt that a large number of people who enjoy science and technology have a large interest in business management and vice-versa. This is the reason we have so many managers who don't understand the limitations of technology, and the proper procedures when developing a new program, etc. I suppose in reality the best we can do is try to communicate the complexities of our jobs to our managers; try to bridge the gap.

    It's too bad there's no intermediate-level "boot camp" for technical project managers. It's not that I ask for a boss that can *do* my job, merely one that understands what is and isn't possible to accomplish.

    amyt

    ~what, no witty signature?~

    --
    echo $wittysigline;
  19. Eject, eject, eject by vinsci · · Score: 4, Informative

    You're on what's called a death march project. (See AntiPatterns, chapter 7, Software Project Management AntiPatterns).

    Never work with a project manager who hasn't been a developer himself. Find a better employer - there's no way you can really succeed where you are now. Your projects will fail, be late, overrun budget, be of sub-standard quality, all of which are things that will ultimately reflect on your CV's. Naturally, any smart people in your projects all know this and work morale will erode.

    Suggested reading

    • AntiPatterns. Refactoring Software, Architectures, and Projects in Crisis. William J Brown et al. Wiley 1998. ISBN 0-471-19713-0.
    • The Mythical Man-Month. Anniverary edition with four new chapters. Frederick P Brooks, Jr. Addison-Wesley 1995. ISBN 0-201-83595-9.
    • Software Project Survival Guide. Steve McConnell. Microsoft Press 1998. ISBN 1-57231-621-7

    Me? Got 20 years in this business. Lot's of projects.

    If you can't find a better employer, become a project manager yourself, it's not rocket science. Read up, take a PM course, do it the way it should be done.

    --

    Trusted Computing FAQ | Free Dawit Isaak!
    1. Re:Eject, eject, eject by DrPepper · · Score: 1

      I agree. I've gone from working on the technical side through to being a Project Manager.

      Good "Technical Project Managers" are always in demand - their projects tend to run smoother and be more successful. I've know how important technical design, testing time, code review and education are - and will always fight for that whenever budgets/schedule is discussed. A good Technical Project Manager can foresee much better the problems that are going to be encountered, and ensure that they get resolved as early as possible.

      We do also have some traditional Project Managers who work with Technical Leaders - it works to an extent, but it's not as good.

      The downside is that you will have to spend a lot of time keeping up with the technology, as well as your training in managing projects. It's a tougher job with more responsibility - but the salaries are correspondingly higher.

      The McConnell books are good. The Rapid Application Development book is quite a good read for picking up useful techniques and tips. The case studies are especially a good laugh as we've all seen them before :-)

    2. Re:Eject, eject, eject by Anonymous Coward · · Score: 0

      So a project manager *has* to be experienced in what he is managing? So a project manager who is managing a building needs to know how to lay bricks, wire up, roof, plaster?

      There isn't any excuse for bad project management, but the solution is better project management, not technical skills.

    3. Re:Eject, eject, eject by robathome · · Score: 2, Insightful

      Never work with a project manager who hasn't been a developer himself.

      If one were to follow that advice, one would be in a constant search for employment in today's world. The fact is that the vast majority of Project Managers are business grads who have little, if any, technical knowledge. Their responsibilities are to develop the business cases and ensure that the product meets their needs.

      The problem arises when one of two situations occurs: the project manager wants to make technical decisions, or the developer refuses to take the business case into account. As a systems engineer and product developer, I see both of these frequently, and the key to resolving them is tact. In a development role, I always try to keep technical scope and specifications under control. I also consult with the PM to ensure that I understand the business need, so that I may prioritize development efforts. Too often, developers feel the need to do what they consider the "Right Way" or "elegant", and completely miss the mark on what the end user wants.

      become a project manager yourself, it's not rocket science.

      Yes, sometimes you do need to think like a manager. There will be times when expectations are totally unrealistic. Then, your own management skills must kick in. Negotiate priorities, flex timelines, get more resources allocated. If the parameters are completely bogus, you need to be able to not just point out what won't work, but to offer workable alternatives in order to achieve the desired end result. If there's no budging on any of these criteria, then perhaps you're in a bad situation. However, to dismiss every PM out-of-hand because they haven't been in the trenches as a coder or engineer only sets one up for failure.

      --

      At 3 A.M. you can see people's auras; at five you can see their contrails...
    4. Re:Eject, eject, eject by Anonymous Coward · · Score: 0

      Never work with a project manager who hasn't been a developer himself.

      Back when there were jobs galore, this was a near-impossible requirement. Now, it's a complete joke.

      If you're one of those well-pedigreed programmers with the killer degree & resume who can get any job you ask for, you can play this game, but for us ordinary folks, the best advice is grab what you can and find a way to make it work. Others have posted excellent advice about how to communicate with project managers.

    5. Re:Eject, eject, eject by Zugot · · Score: 1

      The PM doesn't need to know how to lay the bricks, wire up, roof or plasters. The PM needs to know that bricks, wiring, roofing, and plastering are needed to make a building, and also needs to know who to contact to make it happen.

      --
      -- Bryan
    6. Re:Eject, eject, eject by WNight · · Score: 3, Informative

      Yes. Managers don't need to be experts in the things they're managing but they really need some experience in it.

      A building manager who'd never hammered a nail or hung gyprock wouldn't understand the consequences of their decisions on the people who have to do it. They can bluff their way through by having a nose for bullshit - trying to guess if they're getting the full truth or not, but this is just guesswork.

      In a programming example. Many companies have a policy that all programming must be done in one language, usually C or C++. If your manager has never programmed he won't know how much savings you'll get from writing a text parsing tool in Perl or Python over C, for instance. So they're unlikely to relax the rule. A manager who'd programmed would understand that every language has its strengths and that by letting one technical violation slip, they're saving a ton of time.

      This is where trying to read the employees fits in. You try to guess if the programmer is serious, or if they just like language X more than language Y and are trying to let you program in the language of the week or are serious that it'll pay off.

    7. Re:Eject, eject, eject by Xtifr · · Score: 2

      Never work with a project manager who hasn't been a developer himself.

      I've got 20+ years in the biz too, and I have to STRONGLY disagree with this! The WORST project managers I've worked with have all been former (or even current) developers. The best have been about half-and-half. Being a good project manager involves (among other things) social skills, something many techies lack. A good project manager can always get good technical advice from her team (assuming she's got a halfway decent team). A bad manager may well force everyone to write device drivers in COBOL, simply because he has 20 years of experience with COBOL.

      Techies often get promoted/moved to management because of their technical skills, and they may or may not prove to have management skills once there. Non-techies in technical management are more likely to have to have to shown other skills -- sometimes including actual management skills -- in order to get that technical management job. Thus, in my experience and opinion, your odds of getting a good manager are slightly higher if your manager is not a techie. Unfortunately, this is only a slight tendency; about as far from a reliable guide as you can find. The world is indeed full of PHB's.

      I will say that if I'm going to have bad management, I'd rather have it be technically knowledgeable bad management. That way, it's a little more likely that the project will eventually limp along to something resembling success. But I've seen amazing results from good management, and I'd much rather have that. Unfortunately, good management is all-too rare.

    8. Re:Eject, eject, eject by vinsci · · Score: 1
      Never work with a project manager who hasn't been a developer himself.
      I've got 20+ years in the biz too, and I have to STRONGLY disagree with this! The WORST project managers I've worked with have all been former (or even current) developers. The best have been about half-and-half.

      I agree with you that the best ones are often about half-and-half project managers and developers, hence my original statement. I didn't mean to imply that a PM need to have been at the cutting edge of software engineering.

      Of course, there are indivudal exceptions to any rule of thumb. Depending on a number of non-stated factors people will arrive at different conclusions on the requirements for a good PM. For example, one of the best project managers I have had was non-technical. Why was he good? He didn't try to hide uncomfortable thruths about the project, his peers, supervisors or himself. He adapted immediately to new challenges. He asked when he didn't understand or didn't know. He preferred hearing the thruth, however challenging and disturbing, rather than the comforting social skills lie we all use from time to time and would tell us so.

      Mentioning "social skills" and "lie" in the same sentence may require further comments. There's some interesting research on socials skills, managers and lying. I couldn't find the reference I wanted right now, but see

      http://www.fastcompany.com/online/10/truth.html
      for a related discussion.
      --

      Trusted Computing FAQ | Free Dawit Isaak!
    9. Re:Eject, eject, eject by Xtifr · · Score: 2

      No, no, By "half-and-half" I meant that about half of them (the best) have had a technical background, and about half have not.

  20. Not the case everywhere by Anonymous Coward · · Score: 0

    Take this how you want... I'm a PM at Microsoft, and in the Microsoft culture as a general rule project managers with deep technical knowledge are very highly regarded. Some of the senior management have staggeringly deep technical understanding. Myself, I am/was a low to mid level programmer, and my technical skills in my PM role are valued.

    So, you could always move to Seattle... soul selling optional :)

    1. Re:Not the case everywhere by Anonymous Coward · · Score: 0

      Uh, guys ... ever hear of Klez? SirCam? Melissa?

  21. Managers Manage by Zapdos · · Score: 2

    Supervisors supervise. Most companies are currently deploying the managed type of internal structure, with the theory that a manager can manage anything. Fewer companies are using the supervised type of internal structure. Both methods have their pro and cons. But in the long run a supervised company will have fewer employees with higher salaries, but it will cost less to operate.

  22. My 2 pennies by pkaral · · Score: 1

    The fundamental problem at hand is that most projects need to combine "product" or "business" considerations with considerations of technical feasibility and trade-offs. Projects managed with "product" understanding but poor technical knowledge end up late, expensive, suboptimal, and with frustrated programmers. Projects managed with technical understanding but limited insight into the business objectives and considerations end up spending a lot of resources solving low-value-added problems, things that come up during the project are often poorly evaluated, and (notably) those projects frequently err with respect to ensuring a good adaptation to the context in which the technology will be applied (organization, processes and people).

    This problem is greatly aggrevated by the fact that "product PMs" tend to believe that they know enough about technical implementation, and techies tend to believe that the "product" part of the job is "piece of cake" compared to the technical challenges of the projects.

    Another complicating factor is that project management is a discipline of its own, and anyone without some training in this will be a dabbler and probably underperform. Unfortunately, in my experience, "product" people tend to have a stronger background in this field than technical people do.

    The best solution in my experience is to have a "product person" who has final authority in the project, but to have a technical PM whose job it is to execute that persons specifications according to agreed deadlines and budgets (i.e. the technical PM is the one who schedules activities, creates fabulous GANTT charts, pushes for deliveries etc.). I have, however, seen non-tech people do well in the hands-on PM roll. In these cases those PMs have had the brains to understand enough of the tech part to be relevant in their role.

  23. Project Managers don't need to be techies... by PinglePongle · · Score: 5, Insightful

    Until recently, I was the development manager at a fairly large internet company; we had project managers who knew very little about software development, database design or how to run software projects. Do you know why ? because that was my job.

    Whatever you may think, technology is not the most important part of the project - delivering what the business wants and making the right trade-offs to get that done is what matters. The intellectual purity of our great code is wonderful, but who cares if it gets delivered 6 months after it's needed ?

    The project manager's job is to work out what needs to get built and by when; they need to get all the external dependencies sorted out, ensure the requirements are either known or the person(s) who controls those requirements is available when required, get the money and resources sorted out, and work with a techie on how to get the deliverables built in time.

    I was that techie - and it worked pretty well. The project manager asks for stuff by a certain date, I work with the rest of the team to see what we'd need to do to make that happen, I negotiate with the PM on what is and is not in scope, and get the techies to start with whatever needs to happen to get the project done.

    Every couple of days, I sit down with the Project Manager to agree out where we are, re-negotiate dates/resources etc. if required, assess new requirements, maybe work out in more detail what the plan for the next phase looks like. If we have to cut corners - and this does happen, coz we don't live in a perfect world - I work with the developers to see what we can cut that will have the least effect on the quality - the PM doesn't make that call, I do.

    Project Management requires skills I don't have - I don't understand the commercial pressures on the company, I don't understand the legal framework we're working in, I don't have the patience to build and update Gantt charts, I don't enjoy endless meetings or chasing people for every little detail of their deliverabes. The project managers know this - they don't think any less of me, just as I respect the fact they couldn't design a database schema to save their lives.

    So, I would suggest trying to form a good working relationship with your project manager by trying to understand what they do for a living, understand that there is more to a project than the technical deliverables, learn to speak their language, and offer alternatives when they ask for the impossible.

    The attitude of most of the posts in this subject has been "huh, we're 200 times smarter than those idiots running the project, they're so stupid they couldn't blah blah blah". Hey, if you're so smart, it's your job to use that intellgence to move the project forward, not whine about how what a bad job everyone else is doing.

    --
    It's all very well in practice, but it will never work in theory.
    1. Re:Project Managers don't need to be techies... by lucabrasi999 · · Score: 1

      I, for one, am happier when my project manager is NOT a techie. A techie tends to second-guess everything I do. They tend to get caught up in the details of my code and they usually forget major items (like managing scope creep or creating project plans). A professional PM, on the other hand, is willing to listen to me and work with me (and the client) on setting scope and deadlines. Yeah, there's the occasional PHB among the non-techies, just as there's the occasional techie that is a good manager. But usually, Good developers do NOT make good managers.

    2. Re:Project Managers don't need to be techies... by @madeus · · Score: 2

      Asserting that business requirements are more important over technical merits get's you sub standard solutions that people will hate to use and will waste thousands of man hours being unhappy and being unproductive when the technology could be making their lives easier.

      New methodologies are not invented for fun. They are invented be cause they make things better, for developers, users and business.

      Yes, you can sell poor quality software or technology products for a short period of time and make money, but so will selling drugs, doesn't make it ethical or help make the world a better place. Discounting new technologies and methodlogies is also foolish and bad business sense if a PM has no idea why they are being used in the first place.

      The successful way to make good products that you can feel proud of, people will like and that you can sell is by have a wider world view point that does not revolve around money or technology but people and society (and how you can improve their lives *through* business and technology).

      Clearly business is not more important than technology, unless business is your goal. Which is worrying, because it should revolve around people. Business is a way to encorage development in society and technology, it is not a goal in itself.

      It's possible to make money from good products and good practice, a good example would be OmniGroup who have been doing this for many years. They are small but sucessful and make both some free and some commercial software of very high quality and by and large everybody really likes them. I have a couple of peices of software from them, and it's the only commercial software I use day to day.

    3. Re:Project Managers don't need to be techies... by cruachan · · Score: 1
      The intellectual purity of our great code is wonderful, but who cares if it gets delivered 6 months after it's needed ? ...

      If you believe what this appears to say your company is going to have one hell of a problem wih unmaintainable software further down the line.

    4. Re:Project Managers don't need to be techies... by IAmSancho · · Score: 1

      Business is a way to encorage development in society and technology, it is not a goal in itself.

      Actually, business is nothing more than an institution that feeds everyone in the developed world their proverbial "mother's milk." Your description of business is better suited to a communist society than a capitalist one.

      --
      -------------------------

      Stupid people suck.

    5. Re:Project Managers don't need to be techies... by @madeus · · Score: 2

      Your description of business is better suited to a communist society than a capitalist one.

      Unlike the US my society (UK / Europe) is a socialist one, and that doesn't just reflect our currently elected poltical parties. By American political standards about 80-90% of all Europeans are socialists.

      I consider myself a left leaning liberal, but our right wing parties (the UK's Conservative Party or France's RPR headed by Jacques Chirac) are quite far left of even left wing mainstream parties in the states.

      In Europe as whole, like free heathcare, free higher education, and we don't mind paying significantly higher taxes than US citizens in order to pay for public services, in fact people vote explicitly to retain these things.

      So yes, my society is more socialist, and we like it that way and putting people before business is just common sense to us.

    6. Re:Project Managers don't need to be techies... by Cederic · · Score: 2


      >> Project Management requires skills I don't have - I don't understand the commercial pressures on the company, I don't understand the legal framework we're working in, I don't have the patience to build and update Gantt charts, I don't enjoy endless meetings or chasing people for every little detail of their deliverabes.

      I'm a techie, and I disagree with you on these points.

      I consider it important to know the commercial pressures on the company - providing an IT perspective on the business initiative behind the project can help the business clarify their needs, suggest a simpler solution, and ensure the delivered system does what is needed.

      It is essential to know the legal framework we work in - I've refused to implement code that would be illegal; after consulting with the legal department the customer changed their requirements

      I accept that meetings with customers are necessary to understand what they want (rather than what they ask for). Communication is a cornerstone of good software engineering.

      Although I don't chase people for every piece of their deliverables, I do talk to the customers to understand what the deliverables they expect are, and talk to the other developers to understand what they are intending to deliver. By doing this I achieve many things
      - any requirements gaps are spotted
      - any activities not on the project plan can be communicated to the project manager (who can then resource and cost the project appropriately)
      - I can be certain the developers know what they are doing, or work with them and the customer if they are suffering uncertainty or lack of communication

      All of these things could be done by a project manager, but don't have to be. As a technical person I can bring a perspective to each of these things that a project manager (with their different skillset) may not. And if the project manager is highly technical and is doing these things anyway, my life becomes easier and I focus more strongly on creating my own deliverables, rather than helping the rest of the team with theirs.

      ~Cederic

    7. Re:Project Managers don't need to be techies... by pdrome4robert · · Score: 1

      This is not common, but there is a problem with technical managers over non-technical PMs. At one of my former employers the DM would verbally give the PM design/architecture instructions to pass to the developers. Consistently there were missing details or glaring flaws. If the DM was available you might be able to discuss it with the two of them. (However, this negates the reason for delegation.) Usually the DM was not available. The initial project meetings were a waste of time because the PM would have to go back to the DM for another meeting or the PM would tell the developers to "just do it this way for now and fix it later." The company I work for now is much better. It has professional PMs who only have management experience. We work together and show respect for each others' role and input to projects. Some times it requires negotiation, but that is the give and take between computer science and business in the corporate world.

    8. Re:Project Managers don't need to be techies... by Anonymous Coward · · Score: 0

      At one of my former employers the DM would verbally give the PM design/architecture instructions to pass to the developers.

      You had a Dungeon Master designing your architecture? Cooool.

    9. Re:Project Managers don't need to be techies... by Sciamachy · · Score: 1

      Your situation seems to work because your Project Manager is prepared to trust your expert opinion on how long you need to perform the tasks assigned to you, and is prepared to listen to you rather than just agreeing with a client a timescale in which the client needs stuff doing then dictating to you what timescale you have to work with & refusing to expand your team if the timescale is too small for the existing team to get the job done. Where the primary drivers are cost & client expectation, and no-one with a technical background was involved when selling the project to the client, as frequently happens in my experience, you have a recipe for disaster which can only be averted by the PM having enough technical knowledge to spot the flaws quick enough, or who will listen as yours does, and has the guts to go back & say "This can't be done in the time allotted with the resources available."

  24. It's not as easy as it looks by James+Youngman · · Score: 5, Informative
    There's much more to successful project management than there appears, particularly when the PM is also managing the relationship with an external client. It's the PM's job to make the client happy and (usually) deliver a profit. In a software context, this normally means delivering some software that works (see the Properly Testing Your Code thread).

    As a technical person, skills that you will need to gain in order to be a successful PM will include

    • Understanding the business context and business drivers
    • Managing client relationships (even for internal clients)
    • Estimating and planning skills
    • Tracking progress against plan - and taking appropriate action (pay attention to this one!)
    • An understanding of what timescales are realistic. For example, is it realistic to estimate design:code:test in the ratio 3:2:1? (answer: no).
    • Understand that you need to make it possible for the client to change their mind half-way through
    • Delegation skills (you can't do it all yourself, you know!) and motivational skills (i.e. understand the kinds of things you can / can't ask of people).
    • Risk analysis/mitigation
    • Personal organisation and time management
    • (In some shops) Project accounting skills
    Also, don't underestimate how much work this is. If you are team leading (i.e. working for a PM) then you can expect to lead a team of up to 8 and have the interaction with those staff and the PM take up 100% of your time (i.e. no time left for coding anything yourself). If you are a PM, you won't be able to directly supervise that many staff, because you have the added responsibility of steering the ship. Techies-turned-PMs are frequently tempted to take on the odd technical task - but resign yourself to the fact that you will have to delegate it to one of your staff in order for it to get done on time.

    If you are having difficulty communicating the impossibility of a task, consider making a weekly/monthly report document that shows progress against plan and the outstanding issues and risks. Many of these will not change from week to week, but putting them there provides one place where (s)he can refer to them.

    If something is impossible, then demonstrate in the report why it is impossible, and suggest an alternative. When presenting a problem, your many many times more likely to be successful in getting things changed if you also suggest a workable and realistic solution.

    1. Re:It's not as easy as it looks by Anonymous Coward · · Score: 0

      Mod this up.

      If you simply criticize, and rant about the "impossibility" of a task, but provide no alternatives, you are nothing mroe than the Comic Book Guy from IT. And you're certainly not as valuable as you believe yourself to be.

    2. Re:It's not as easy as it looks by TopShelf · · Score: 2
      Understand that you need to make it possible for the client to change their mind half-way through

      That's a fantastic point - all too often when a Project Manager rises from the technical ranks, they don't understand the changing needs of business. After all, the whole point of a project is to meet a business need, not just deliver exactly what was specified at the beginning of the venture. I'm currently dealing with a PM who is a former programmer, and she looks at the project plan as a rigid structure (i.e., if one tasks slips by a day, the whole project slips by a day). The best project managers combine an in-depth understanding of the business with rock-solid organizational skills, and a heap o' "people skills" to boot, which is required to bring a variety of interests together to accomplish a larger goal.

      --
      Stop by my site where I write about ERP systems & more
    3. Re:It's not as easy as it looks by demings101 · · Score: 1

      posted my note before i read yours. excellent overview/reality check. now i feel redundant ;-). never mind - it's all good.

  25. The solution by Anonymous Coward · · Score: 0

    SYSTEM ADMINISTRATION!

    I don't need no stinkin' Project Admin's

  26. It's all about trust... by Kaneda · · Score: 1, Insightful

    I am a project manager in a technical environment, and learnt a few important things.
    Having former programmers as project managers can work, but it's certainly not a recipe for success.

    A project manager's role is about being able to zoom in from a general, bird's eye view, right down into the details, and then knowing who to defer to for decisions when they are out of their depth. A good project manager will identify and document the risks way ahead of them becoming problems, but won't necessarily dig in and try solve the problems themselves.

    It's all about managing the project - that means the customers, the timelines, the risks, the documentation, the testing and the delivery.
    It's not about managing people or code.
    Yes, I've seen managers fsck up projects because they have been tempted to make technical decisions that they are not qualified to make.
    But a good project manager will know when to take the advice of experts.

    1. Re:It's all about trust... by kistel · · Score: 1

      You got some good points here, but in my opinion PM _is_ about managing people, too. It plays a very important part.

      Personally I would say whether a PM needs to be a techie guy depends mainly on the size of a project (besides many other things).

      When working on smaller projects, everyone has to understand the big picture, has to know at least a little from the others' fields of work. That's how they interact.

      However, on larger projects (say, 50+ ppl) PMs cannot kow everything, they have to rely on all kind of experts. Their job is to identify and make plans on using all kinds of resources, build and operate timelines, control workflow. On each of these points, they have to rely on their experts. On this scale, a PM cannot tell if a DB design is good or not. (I've worked with PMs who wanted to understand every bit we did, why we did that way, etc. The PM quickly became a single point of failure and speed limit.)

  27. You're in the wrong job... by Anonymous Coward · · Score: 0

    What you are experiencing is anquish caused by the incompetent management skills of others.
    If you care so much about how a job is managed. Perhaps you should be managing? But then who'd do the developing? Someone else?! NEVER!

    Almost all developers I know experience what you are experiencing.... It is in the nature of developers to be bothered about how absolutely everything works... Developers are almost always managed by people who are not as diligent or as qualified as themselves.

    But you face a choice.. Do you move into management and wasted your talents? Or do you get on with your job?

    If you don't like the management. You can always change positions?

  28. PM with software engineering skills by Anonymous Coward · · Score: 0

    i just completed a software engineering masters, i work as a developer and was unhappy with the bare minimum of technical stuff they included in the course. it turns out my year was the last one enrolled on that particular course - the new course next year has ALL technical stuff removed and is purely on project management and testing procedures. interestingly enough part of the course covers seeking correct technical input from development staff and deriving accurate metrics from them - which as a developer i find a bit insulting.

    i think in the future we cannot rely on PMs being promoted from developing staff but being recruited with an entirely different set of skills. inevitably there will be friction and dissagreement between team and PM :-(

  29. Dave Welsh in Toronto, is that you?! by Anonymous Coward · · Score: 0

    You're in big trouble now...

  30. cuts both ways by oldBullBalloon · · Score: 1

    I work in the IS dept of a multinational as a "systems manager", responsible for the SDLC of several existing apps and for guiding dev of a couple of new ones. My background is from the business (niche finance) but I've acquired a fair bit of technical nouse in the last 5-6 years, and I've met lots of "technical" consultants, "business" consultants, god help me "Business Process Reengineering" consultants, along with the developers who have worked with/for me. Some non-techs have been great architects/designers and some techs have turned out to be great "business process" people...

    Yes, PMs need to have a good working knowledge of the technology and tools (and most importantly, some idea of what the developer's job is _really_ like), but don't necessarily need to be able to do it themselves...

  31. Who writes the specifications? by geoswan · · Score: 5, Interesting
    "...the project managers have no programming experience of any sort. I'm of the opinion that project managers should understand the projects... As a result we are routinely told to skip testing or to implement the impossible, with an emphasis on how things look rather than how well things actually work. Has anyone else found the barrier to project management is their technical knowledge. How did you get past it?"

    If your "managers" have no technical experience who writes the specifications that you aim to implement?

    If they present you with some kind of brief, insufficient description of the project, you need to write out something more specific, that you can actually work too. You learned, as I learned, in cs 101, that you shouldn't start working on a problem until it has been clearly defined. You learned, as I learned, that if you start programming without a clear goal in mind, you won't know when you "finished".

    So you write this description. Get your fellow team members, if you have any, on side. Then take it to your manager, and get them to read it, and sign off on it. If their original design has some impossible "feature" in it, maybe this is where you explain, in writing, where it is impossible. If it isn't really impossible, just very difficult, and in your technical opinion, of marginal utility, this is where you present your bosses with an honest prediction of the cost of their pet feature. If you explain to them that their pet feature will make the project take twice as long, or three times as long, will they really still want you to do it? Or will they say, "Oh shit, well in that case forget it."

    If they really don't know what they are doing, then they will probably fear a paper trail that documents that you warned them the pet feature would double the time to implement.

    If your boss is an asshole, and says something like, "If you can't do it I will get someone who can!" Or, "If you can't do it within this time constraint I will get someone who can!" Call his or her bluff. If their pet feature really is impossible to implement, they won't find anyone else who can do it.

    Revise your document to reflect the choices they made. Then work to this document. If they wanted you to implement their pet feature, even though you explained it would double the time to implement, you have protected yourself against the complaint that you are behind schedule. Document your work. Each time you complete one of the milestones in your original memo, refer back to your memo.

    So, are you doing tasks which are really the job of the technical manager? Without getting a corresponding raise? Well, yes. But you did, after all, want to move into management, didn't you?

    If you do a good job implementing what you promised in your memo will they reward you with a promotion, a raise?

    I don't know. But you have acted with integrity.

    If it comes time for your annual performance review, is this the time to explain that you have already been shouldering responsibilities that are really management responsibilities?

    1. Re:Who writes the specifications? by deblau · · Score: 3, Informative
      If you explain to them that their pet feature will make the project take twice as long, or three times as long, will they really still want you to do it? Or will they say, "Oh shit, well in that case forget it."
      They'll say, "Find a way to make it work, on time and within budget, and laws of physics be damned". This is the primary problem with most bad PMs; they don't listen. OTOH, this is also the primary problem with most bad (i.e., non-business-knowledgable) coders. In my experience, the proper action is to communicate with the PM, find out why the feature is so important, ask if it's OK that 5 other features won't get done for this one, etc. It may be that the PM isn't clearly communicating, or it may be that the coder doesn't want to do boring work. Which do you think is the case?
      If they really don't know what they are doing, then they will probably fear a paper trail that documents that you warned them the pet feature would double the time to implement.
      You assume they care about the product, and that they have ethics. No, what'll probably happen is they'll either bury the report or play politics. Remember, like everthing else, shit flows downhill.
      If your boss is an asshole, and says something like, "If you can't do it I will get someone who can!" Or, "If you can't do it within this time constraint I will get someone who can!" Call his or her bluff.
      Yeah, that'll make you real popular. Let's play dick-swinging, chest-beating games with our boss. They'll love you after you prove them an idiot to everyone in the office and shove it in their face! Heaven forbid, maybe your boss is having a family crisis, find out what is going on before jumping to conclusions. If they're being unreasonable, then there are things you can do (talk to HR, let them know you're having problems working, see if there's an ombuds, use an employee feedback mechanism...)
      --
      This post expresses my opinion, not that of my employer. And yes, IAAL.
  32. Been there, done that... by Zocalo · · Score: 2
    You say you want to move into project management, so if you haven't done so already, get yourself onto a project management course or three. Apply what you are taught where appropriate, whenever it's appropriate so you have evidence that you know what you are doing.

    Then, the next time you are in one of those post mortems because your useless PM fscked up, tear his/her project apart in front of some senior managers. Point out the flaws. Suggest how things could have been done better and how to get things back on track. Have purdy gant and pert charts and so on to back it all up. Know the facts and figures. Don't directly blame the PM, but leave the implication hanging. For bonus points walk the walk after talking the talk and deliver what you suggested.

    Do it right and you'll get a fat bonus, pay rise, satisifaction of an incompetent leaving your life and kudos from your colleagues.

    --
    UNIX? They're not even circumcised! Savages!
  33. Politics by sleaterkinney · · Score: 1

    Believe me, from what I have seen, PMs have to put up with a lot more crap from business lusers.
    Personally speaking, I would rather be writing code than putting up with the politics and lack of knowledge.

  34. In one word: don't. by johnjaydk · · Score: 2, Interesting

    Based on my experience I can't understand why anybody would want to become a project manager. It's a rotten thankless job and you've got zero job security. You're basically being squeezed between management, who hands you an impossible job and to few resources to do it and the techies who cant deliver the goods fast enough. While this goes on you have to do a lot of political infighting to steal more resources for your project, prevent other projects from stealing your resource's and competing with the other project managers to look good in order to still have a job in six months. Being a technical lead is a better job by far (been there) but only if you work with a pm who is actually listening to you otherwise you are a perfect candidate for a scapegoat... The real trick is to focus very hard on requirements even if this means that analysis drags on for ever and the pm is pesting you to get it over with. Make a document that can stand up in court and don't accept any changes without extra resources or a reduction in other functionality. Make a formal procedure for these changes (they will happen). And when the shit hits the fan: ALWAYS SIDE WITH THE TECHIES. The techies are mostly honest and rarely play political games. The pm's are always up to something and ready so sacrifice you in a heartbeat if it helps them in their games.

    --
    TCAP-Abort
  35. ... And the wisdom to know the difference by debrain · · Score: 2

    Unless you own the company, let them make their mistakes. Put in your advice, and if they take it and benefit, so be it, but otherwise, you can - and under certain circumstances should - move on at their loss. It's not your company to run, and if the company fails, it's not your fault. Constructively critise, but don't undermine the managers opinions.

    Don't blame the mangers, either - someone put them there, and I have seen poor management come from resentment towards techies as much as incompetence. They are people, get to know them, and you may find that they agree with you in assessing their own shortcomings. From that admission you have options - management need not imply dictation.

    Do your personal due diligence, but if the owners don't ask for your help, don't go out of your way to offer it. Save your energy for bigger stakes, IMHO. ("Owners" is vague, I know, but this is slashdot, and I'm being sweepingly vague ;) )

    1. Re:... And the wisdom to know the difference by tomatobasil · · Score: 1, Informative

      Thats trick to getting a techie to work 20 extra hours a week for the manager's benefit - make 'em feel just enough like owners to try and "save" the project. You set up an impossible situation and tell one of that they're "lead programmer" and watch that one self-destruct. Works every time.

  36. Become technical manager by JohnConnor · · Score: 1

    The position of "technical manager" is more appropriate for you. It's the perfect way to add technical knowledge to management.

    It won't threaten the other managers as much because you are not competing directly with them. In fact they usually welcome the addition of a technical manager, it relieves them of the technical responsibilities.

    It will be more interesting for you than PM because there is only technical stuff to deal with, and none of the "management" stuff that requires an entirely set of logical tools and morals.

    Finally, it will be an easier introduction to the world of management because there will be less to learn since you are staying in your field.

    If later you are still interested in pure management (why?!), the position of technical manager is a perfect stepping stone.

    So, what are you waiting for?

  37. ACHTUNG! Developers - BE WARNED!!! by heretic108 · · Score: 4, Interesting

    I worked for the Australian subsidiary of Wang Labs, at the time when Wang was the #2 computer company in Australia.

    Their R&D department was surging from strength to strength, until the Director made the decision to recruit staff from the sales support team to work as project managers.

    Never in my whole computing career was I immersed into such a political cesspit. These posturing pretenders sold out us R&D engineers to the most ridiculously stupid deadlines and functional requirements, skipping testing, fudging demos, and crafting a clever spin which transferred the perceived blame to the engineers for failure to deliver.

    After months of being unable to focus on a project, due to constantly moving goalposts and political bitching, I resigned. One week later, most R&D staff were laid off, and a couple of years later, Wang Labs went Chapter 11.

    In my 2 jobs following, the project managers were veteran engineers, who played an active and respected part in all aspects of the projects, from design through to maintenance. Any non-technical project managers were routinely beaten into submission by technical management. Took me ages to get over the shock. But these companies were notorious in the industry for being able to deliver more, faster, better and cheaper than their bloated, suit-driven rivals.

    For any developer going through interviews, I advise you to ask for some time with one or more project managers, get into technical conversation and see what they know. If they start bullshitting and bluffing - decline the job politely and look forward to the interview with the next company.

    Otherwise, your career may suffer unrecoverable damage. Every month you spend in the industry - you are accountable for that time, and hsve to justify it when seeking your next job. Don't be seduced by slightly higher pay packets with the suit-driven outfits - it'll cost you in the long run.

    --
    -- In the beginning was the WORD, and the WORD was UNSIGNED, and the main(){} was without form and void...
    1. Re:ACHTUNG! Developers - BE WARNED!!! by icey5000 · · Score: 1

      You hit the nail on the head... almost. In my experience the danger lies more in letting political or sales types manage projects. I've worked with technical pms before and that can be great, but I've also worked with good pms that were non-technical. The worst pms that I've worked with were salesmen (or ex-salesmen). Alot of them distrust techies and tune out any technical talk. One guy I worked with (the biggest asshole I've ever met BTW) didn't think technical concerns were valid issues to raise ("that's your problem, just solve it"). Anyway, the problem with salespeople is the salesperson's mantra is: sell first, figure out how to deliver later. This is insane for technical projects, but lucky for them techies are (usually) a. honest and b. not great politicians; and hence become great scapegoats (especially since salespeople are very good manipulators).

  38. This approach ... by Anonymous Coward · · Score: 0

    ... is well documented. Welcome to the real world

  39. Re:I've been reloading for 5 hours. by Anonymous Coward · · Score: 0

    I think it's wonderful you and others have found a creative way of channeling aggression. And of course, much thanks to slashdot - providing an outlet for all this negative energy is a great service.

  40. Most doomed by Anonymous Coward · · Score: 1, Interesting
    (Posting anonymously cos he knows my /. login.)

    "I'm a [...] developer in a medium sized company where the project managers have no programming experience of any sort..."


    Man, I feel your pain. I, too, have a non-technical manager; the hell of dealing with this... this... this non-technical manager has got me looking for a new job. A single example. A couple of weeks back, a story about our company broke on a Friday. Over the weekend, several tech news sites picked it up (including Slashdot) and the general consensus was, "Company X are evil, rude, and generally Bad People." On Monday morning, I asked the PHB whether he'd seen any of the terrible press we'd just picked up. His response, dripping with sarcasm: "And *why* would I be reading Slashdot or ZDNet over the weekend?" I gaped at him, barely able to believe my ears. "Er... because you might be interested in events in the industry you work in?" "Not at the weekend, matey! What sort of an idiot do you take me for?"

    This guy earns (counts on fingers) about US $100,000 per year for giving me stupid things to do, crossing out my estimates of how long programming tasks will take and reducing them by 40%, cracking lame jokes (and then laughing at them himself), irritating the **** out of all around him and generally being a complete gimp. Worst manager I ever worked for, no contest; and the most hated by his team, and indeed colleagues.

    I'm almost tempted to stay, just so I can witness the inevitable payback.

    1. Re:Most doomed by Anonymous Coward · · Score: 0

      > I'm almost tempted to stay, just so I can witness the inevitable payback.

      Don't do it.

      Part of that blame will be liberally spread around to all the other folks who didn't help him succeed like he wanted. That WILL include you.

      Leave the ship now, before the water reaches your neck.

  41. HERE IS THE SOLUTION... by Anonymous Coward · · Score: 0

    Pick up a copy of "Project Management for Dummies". Leave it on your desk for all to see. Now, walk around the office alot, talking quite loudly about project management and GANTT charts and how you are an expert. They'll love it.

  42. PM is for project stuff... you are for tech stuff by Anonymous Coward · · Score: 0

    I think there are not many things that "are impossible to implement". Hey, we are technicians, right? We CAN send a man on the moon. It's our mission to do the impossible. I like to say to myself "I'm an engineer, I can do it!"(r).

    There is, however, another side of the story. We can do it. But we need resources. There is a poster here in my office, saying: "YES! ...but can you afford it?"(r)

    I think you should try to explain to your PM that some things are very EXPENSIVE to implement. Then it's up to him to decide if a feature is worth it - or, to put it another way - is he able to sell it for more than it costs.

    I've been working with many different PMs so far. Some of them had good technical background and some of them none. It IS easier to talk with a "techee" PM, but a "non-techee" has other qualities. It is, however, important that your PM understands software development process. But that is another story.

    Regards,
    Jernej

    n0sp4m_jernejkase@hotmail.com

  43. Tell me 'bout it by yem · · Score: 1

    My development manager announced today that Macromedia Flash is the future of e-commerce.

    uh huh...

    --
    No, I did not read the f***ing article!
    1. Re:Tell me 'bout it by Anonymous Coward · · Score: 0

      It is!

      Now get back to work b4 I fire your ass!

    2. Re:Tell me 'bout it by Anonymous Coward · · Score: 0

      mod this 'funny' u dim mods!

    3. Re:Tell me 'bout it by Anonymous Coward · · Score: 0

      Bravo! this is the funniest thing I have heard in ages :-)) My heartfelt sympathies.

  44. corporate culture by devonbowen · · Score: 2, Interesting

    I think the biggest challenge you face is changing the corporate culture. I was in a similiar situation a while back and moved into project management. And, you know, it just didn't matter much because the requests for the impossible still kept coming from above. The only difference was that I was responsible for delivering them. A company needs to have a culture of being realistic and that has to come from the top. Without that, I think it's unlikely you're going to change much in that respect.

    On the other hand, the one thing you can change by becoming a project manager is making the lives of the people under you better. You can deflect the blame a bit more and give people the breaks and recognition they deserve. And that is certainly worth something.

    Devon

  45. Wrong set of questions. by lfourrier · · Score: 1

    Previous suggestions to senior management that myself and other developers would feel better with a technical person running projects have been dismissed.
    Look at a recent DDJ editorial:
    http://www.ddj.com/documents/s=2287/dd j0202q/0202q . tm

    Has anyone else found the barrier to project management is their technical knowledge. How did you get past it?
    Wrong question. The right one is :
    Why is there no (or very few) way for technical persons to evolve and be recognized without choosing the dark side of the force?
    How come peoples who choose to work with computers, often because they have a straight and scientific state of mind, are obliged, in order to progress, to choose management, which is not the most scientific process?
    As for test avoidance and look first, if they can not change their point of view, in the long run, they are doomed. Consequently, you too, if you stay.

  46. Welcome to England! by Anonymous Coward · · Score: 0

    "I'm a senior web developer in a medium sized company where the project managers have no programming experience of any sort"

    Land of the fucking shit managers who dont know what the FUCK they are doing. "Maybe I should give the programmers the ability to create checkpoints in the version control system we are using?" Yeah, maybe, Sherlock. Who else is going go do it - you ignorant FUCK!

  47. the 10 things I like about a PM by falsemover · · Score: 1

    a good project manager is somebody who gains respect of his programmers. These are the 10 ways how - sticks up for his team always - says "no" to unrealistic timeframes set from management - says "no" when management want to ship extra functionality before the release - can help fix the toughest bugs that are delaying the schedule - has been there before in the programming world and has learned a thing or two. - always promotes his team and does the best by them - does not take credit for others :- always distributes it back to the team. - pushes management to reward his team for performance - pushes management to give promotions where they are due - takes the blame if anything goes wrong and quitely works with the team to get it fixed. Unfortunately, typical project managers have few, if any of these qualities. Rate your own PM ...

    --
    consider coffee a lubricant that helps one penetrate the coding zone
  48. huh wft ? by Anonymous Coward · · Score: 0

    I never tought that someone with no programming experience could run a project ! :)

    I think you may try again to push the demand to your boss.

    Project leaders must be Programmer/Analyst

  49. Re:Tom DeMarco books / Professionalism by Anonymous Coward · · Score: 0

    Tom DeMarco Rocks! He also has a book called Why Does Software Cost So Much? Overall it's ok, but it has a few choice essays that every manager should read. Tom also has a fantastic essay on professionalism.

  50. The Dilbert principle: by Anonymous Coward · · Score: 0


    The most incompetant people are promoted to the positions where they can do the least harm: Management.

  51. From the trenches... by StudMuffin · · Score: 2

    Has anyone else found the barrier to project management is their technical knowledge?

    I might counter that you have this backwards. As a long-time project manager with a technical background, my feeling is that the barrier to technical knowledge is project management. :-) I really WANT to code or design, but status meetings and budget reviews keep getting in the way. Sigh.

    In all seriousness, though, work with your current project manager. If they are not technical, then they are glossing over things because they don't understand the importance. Testing is a wee bit critical, and unless they are pulling delivery dates completely out of their backsides with no input from you it is partially your fault for the schedules being pushed so hard. Your job is, quite frankly, to manage your project manager. "Manage up". Tell him/her how things are going, exactly, and make delivery scedules completely clear. DO NOT HIDE ANYTHING! The secret to a good relationship with a project manager is information flow. The more s/he knows about exactly what is going on, the more likely you are to be in agreement with schedules. Your PM is getting pressure from upper management to delivery products on time and under budget, and unless s/he knows about schedule slips way ahead of time, or problems with the design, etc, the less time s/he will have to prepare the executives for a change. You are not working in a vaccuum! Your PM is your best (and often ONLY) advocate to the executives, and you need to make them work for you. Believe it or not, I prefer it when I know all the good AND bad things going on so I can protect my team from unreasonable pressure from above and get them the resources they need to finish the work. If I don't know, I can't prepare the groundwork.

    If you want to move into project management, take on more and more of the role yourself. Gather status reports ahead of time and consolidate them into a summary for your PM. Ask to assist in budget preparations or schedule creation. Make it clear that you are there to help, not to hinder, and make it clear that you want to move into that role. Show the merit of a technical person acting in a PM capacity.

    Good luck. And think seriously about it - if you love technical work, you might want to consider staying there, as PM work is NOT technical and you might feel that you have made a big mistake at some point.

    --
    Weaseling out of things is important to learn. It's what separates us from the animals... except the weasel. -
  52. Nope by AppyPappy · · Score: 4, Insightful

    Programming skills and management skills are mutually-exclusive. I've always found project managers to be hired as programmers who were later found to be lousy programmers. I remember working with one guy who was hired because of a great resume. His first words when he came in the door were "I'm really not technical". He became a project manager because, although he wasn't technical, he gave great face.

    A project manager is basically a eunuch acting as a catcher in a shitball game.

    --

    If you aren't part of the solution, there is good money to be made prolonging the problem

    1. Re:Nope by Fross · · Score: 3, Funny

      He became a project manager because, although he wasn't technical, he gave great face.

      Is this some euphenism for oral sex I'm not familiar with?

    2. Re:Nope by the+eric+conspiracy · · Score: 3, Insightful

      Programming skills and management skills are mutually-exclusive.

      I don't agree with that at all - I think rather that the skill sets are nearly independent - you can be a perfectly good project manager with no programming skills, however being a good programmer doesn't mean that you would be a bad manager.

      There are plenty of examples in industry of good programmers who also have turned out to be excellent managers. Bill Gates is the most famous case.

    3. Re:Nope by AppyPappy · · Score: 2

      He looked pretty and knew how to smile at the right people. He was at the office late and on weekends doing nothing but being there. He was a "fluffy". All fluff and no substance. A management plush toy.

      When we got called in for problems, he would insist on coming in and patting our hands while we worked. Boy howdy, that was sure helpful. But he could always say he was there.

      He's a headhunter now. Perfect!

      --

      If you aren't part of the solution, there is good money to be made prolonging the problem

    4. Re:Nope by sahala · · Score: 1
      Programming skills and management skills are mutually-exclusive.

      I find it very amusing that you can put a very hard mathematical rule to something as amorphous as skill-set. You might as well make other broad statements: computer geeks can't be athletes, athletes can't be artists, and artists can't be computer geeks -- you get my point.

      As another poster mentioned these skill sets can be individually attained with competence. It may be harder to have both deep and broad skill-sets but people have done it. I've seen project managers shoot holes in database schemas then turn around and discuss scoping and business requirements over business lunches with clients.

      I'm willing to bet that these project managers are the type that don't believe in arbitrary "rules" based on anecdotes like yours. The really successful people out there don't believe in mutually-exclusivity....they believe in creative navigation around obstacles and hard work to make projects work.

      I'm a techie but I too often find that other developers try to reduce the world into neat little data structures and algorithms. This is a great attitude in a technical context such as building software, but when dealing with people and other "soft" things it just doesn't work.

  53. Oh Please! by Anonymous Coward · · Score: 0

    Never work with a project manager who hasn't been a developer himself

    This means one thing to me; you are completely incapable of explaining technical things to people in a non-technical manner. If you knew how to communicate a bit better then your project manager needn't be a programmer. What you have above is pure nonsense; the best managers that I've had have been non-progammers who completely understand their business and how our software product fits with the business... programmers often don't get this aspect of things and thus are in a bad situation to make the business case for alternative directions, etc.

    Me? Got 20 years in this business. Lot's of projects.

    Starting when you were 8 right?

    1. Re:Oh Please! by Fnkmaster · · Score: 5, Informative

      This is pure trash. The fact is that most programmers don't and don't really care to understand much about the business. That's exactly the reason that you need technical leads or TPMs who understand both the business requirements and enough of technology to make reasonable trade-off decisions, and either work closely with a business-oriented PM/requirements person, or have excellent rapport with upper-management (i.e. have their trust - not be perceived as a lying technology person).

    2. Re:Oh Please! by vinsci · · Score: 1
      This means one thing to me; you are completely incapable of explaining technical things to people in a non-technical manner. If you knew how to communicate a bit better then your project manager needn't be a programmer.

      As you gain more experience, you will recognice that some non-technical managers respond to explanations, I've been happy with the ones I've seen. Many less experienced non-technical managers do not respond well to technical reasoning, however.

      Experienced developers and managers understand that in order to succeed, one must continously adapt to new circumstances, and yes, that involves changing the project plan, changing equipment, changing tools, changing platform, etc. Less experienced non-technical project managers resist any change, apparently afraid of loosing control. But in resisting necessary change, they loose control without exception.

      Starting when you were 8 right?
      I founded my first own software business at 17, already doing consulting, writing software development tools and doing systems programming. I'm now 37. I started with computers in 1979, at first sight. I should probably tell a lot more about myself and what I've done on my home page. ;-)
      --

      Trusted Computing FAQ | Free Dawit Isaak!
    3. Re:Oh Please! by Anonymous Coward · · Score: 0

      The fact is that most programmers don't and don't really care to understand much about the business.

      Sometimes true. I've also seen organizations that don't want the programmers to care or understand the business. They'd prefer that the technical folk "focus" on their asssigned technical tasks, and enforce it with tight, high-stakes schedules.

      The term for this that project management adopted last time around was "stay in your bubble".

    4. Re:Oh Please! by 0WaitState · · Score: 1

      Actually, thats the "Mushroom Management" antipattern--kept in the dark, and fed shit.

      --

      Remain calm! All is well!
  54. thank god for my boss by hrieke · · Score: 2

    He was a developer in a former life, so he understands what I have to do to get the job done and supports me 100%. Hell, he's kept the heat off of me when a project went over the time frame.

    As your boss this question:
    Would they rather have the correct answer in a day or the wrong answer right now? Of course they want the correct answer, and that's how you then sell them on getting a technical manager. Tell them that while you test as best as you can, you are focusing on the wrong issues which could allow for bugs which will lead to problems and wrong answers. Of course your next question to /. is how to interview a technical manager.

    --
    III.IIVIVIXIIVIVIIIVVIIIIXVIIIXIIIIIIIIVIIIIVVIIIV IIVIIIIIIVIII...
  55. I shared your opinion, then... by Anonymous Coward · · Score: 0

    I met a GOOD project manager. Its easy to blame a manager's lack of competence on lack of technical skill, but thats rarely it.
    Of my managers at my current company (I've had six of them), by far the best was one who was non technical. the worst was someone who was technical (DO NOT fall into the "I know XYZ better than the engineer" trap. Even if you do, you need to enable your engineer to resolve the issue without so much as the letters T-C-P coming out of your mouth...)

  56. The key lies elsewhere in your organisation by Orangecutter · · Score: 2, Interesting

    I understand your frustration that you see things going badly and want to do a better job, but knowing the details of developers' work is not the answer.

    The best project manager I ever worked with knew nothing about the details. It was in the early days of the Web, building a very complex Web site for a client, and he barely knew how to write HTML. But here's why he was a great PM: He trusted his team, including the technical lead, he understood the people and knew how to get them to work well together, and he knew the importance of high level issues like testing, clear specifications and change control. He was a good *manager*.

    And here's another key to success: strong sales people. Good sales people will get the right cost estimates from the developers/consultants, and then won't buckle under pressure when they present those to the client. Then you actually have time to do the testing which was factored into the proposal.

    I was a very technical project manager, not quite a developer, but I like to think I understood the tech details very well and got on well with my various teams. But I would regularly get bogged down in the details simply because I enjoyed them, and as a result would spend less time on the strategic issues like persuading the client that they should reconsider their latest idea. I think I did well, but I know I could have done better.

    My advice to you is this: talk to your project managers and sales people, and get them to understand the importance of the various stages of work. Show them that a slip early on can lead to more costly slips later. Advise them, and get them to trust you, so that when you say "We need to spend two weeks testing" they make sure you get that two weeks and don't think "Oh, but I'm sure we can get away with a couple of days".

    As for progress in your career, project management is a lot about people and little about knowing obscure technical details. If it's people you want to focus on, then great. Otherwise perhaps you should aim for being a senior architect. And then your company can charge more for your time, and they'll have even more budget to spend on testing!

  57. Sounds reasonable... by JaredOfEuropa · · Score: 2

    In my experience project managers like to have a technical team member whom they can trust. A sparring partner (might as well stick with PM lingo) who can be trusted to see beyond the technical side of the project and understands the importance of budgets, client needs and so on. Project managers are like most professionals; they don't necessarily want an easy job, but they want to be succesful.

    Don't reject your PMs bollocksy timelines out of hand, but work with him to show what the result of following that timeline would bring. If your PM thinks to skip testing of the product, it's best not to act like the haughty technical prima donna who refuses to release anything untested. Instead, talk about risks and alternatives. If you know of any past famous projects that failed for poor planning, show him what he is getting into.

    Do this well, and PMs will start to know you for someone who helps them rather than someone who'll dig his heels in. Perhaps at some point you'll be asked to be technical manager for alarger project. That's the perfect job for those who are thinking about a management position but not ready to give up on technology.

    --
    If construction was anything like programming, an incorrectly fitted lock would bring down the entire building...
  58. Those who can do, those who cannot (should) ask by beswicks · · Score: 2, Interesting

    I used to work for a IT company with a creative vent, as a result they hired project managers with ZERO understanding of the tech side, and knew more about making things purty.

    We got by because the project managers knew that they didn't know anything, so they would ask about everything, but that did put a major strain on the tech department as we ended up being consulted about EVERYTHING.

    I am a strong believer that project managers should understand the area that the project is in, they don't have to be a guru but it makes sense that they should at least understand whats going on.

    However I also know that a project manager needs to understand more than 'joe programmer', as business(tm) (as in harvard business school) comes more into there jobs. And of corse they should be able to buffer the programmers from the clients, I know a lot of hackers who cannot comunicate with each other, let alone a suit.

    c.

  59. How to NOT be a manager by standards · · Score: 4, Insightful

    > I may meet resistance from the current project
    > managers - many of them have been hired with no
    > previous experience of anything.

    Really? Wow, you work in an organization where they hire managers without experience, but they also hire quality programmers? Hum, sounds fishy.

    > Previous suggestions to senior management
    > that myself and other developers would feel
    > better with a technical person running projects
    > have been dismissed.

    As someone who hasn't actually managed a project, you're in no position to assess the situation.

    Clearly you can't see or understand your colleauges' contributions or experience. Therefore, you are likely in no position to be a project manager.

    You get to be a project manager by proving yourself, not by telling your management that you're better than others.

    > Has anyone else found the barrier to project
    > management is their technical knowledge.
    > How did you get past it?

    No, the barrier is being an egotistical programmers who thinks that they're better than non-technical people. That's the real barrier.

    I'm technical. But I appreciate quality management, and I understand that they have critical value to the projects we pursue.

    I think that's a start. But I also think you're many years away from being a good project manager. Given your attitude, I'd hate to work with you.

    1. Re:How to NOT be a manager by Cederic · · Score: 2

      Disregarding your aggressive personal attack, some points you maybe haven't considered :

      Many technical people (myself included) have had to take on various elements of project management on various projects, and/or managed entire projects themselves.

      They also quite often turn down 'opportunities' to become project managers, as they enjoy their current role, or wish to follow a technical career path.

      So just because they are technical it would be foolish to assume they lack project management skills.

      On all my projects for the past three years, I have guided my project managers, giving them feedback, prompting them to do the things that they should be doing, ensuring that things they overlook don't get forgotten, and going straight to a customer if the project manager is either incapable or too busy to give me the responses I need.

      I'm not suggesting the project managers are incompetant - just that I am able to do half their job for them, and usually do. However, I am still a technical person and I'll still refuse any project management role offered to me.

      Suggesting that people like me are 'egotistical programmers who thinks [sic] that they're better than non-technical people' is demeaning and inaccurate. I have a skillset that complements that of a good project manager, and although I perhaps lack certain project management skills I don't lack the ability to identify them in others.

      ~Cederic

    2. Re:How to NOT be a manager by clearcache · · Score: 2

      I agree. The real barrier to working with non-technical people as project managers is the lack of communication - not their lack of technical understanding. And, I'm sorry guys, but the burden for effective communication falls equally on all members of a project. As technical people, we need to know how to translate our knowledge and experience into statements that our project managers can grasp.

      I, too, work for a medium sized company with non-technical people as project directors. We have had tremendous success with this arrangement...and we have had tremendous failures. Communication has almost always been the cause of success or failure. You need to learn how to manage your project managers' expectations of the technology, its implementation, and your time. The only way to do this is through effective communication.

      I do feel that on very LARGE projects, a technical project manager working hand-in-hand with a non-technical project manager is a necessity...but those two people perform two completely different tasks. On smaller projects, that person would be overkill...and would likely be doing much of what you - as a programmer - should be doing.

    3. Re:How to NOT be a manager by PapaZit · · Score: 2

      Amen.

      I used to have a job where management was incredibly clueless. We'd joke about trading our boss for the PHB from Dilbert because it'd be a step up. Eventually, this frustrated me enough that I left and found a job elsewhere.

      At the new job, I had a new manager. He was a decent manager, and I accomplished a lot more than I had before. Clearly, I was vindicated: without the clueless manager, I was able to do more.

      Then, due to a reorganization, I ended up working for a truly amazing manager. The guy really wanted to be sure that I was doing work that I found important and interesting. He's constantly asking around for ways that he can improve. I learned something pretty quickly: I wasn't the amazing employee that I thought I was. I was just better than some of my clueless coworkers. I learned that because this guy was constantly asking about my goals and what I wanted to get out of the project and the organization. I realized that I really did have a poor understanding of the organizations larger goals. Because of him, I really do feel like I've become more productive and I've gained insight into the big picture. Ironically, thanks to better management, I'm approaching the level of skill that I (incorrectly) thought that I had before.

      --
      Forward, retransmit, or republish anything I say here. Just don't misquote me.
    4. Re:How to NOT be a manager by Vortran · · Score: 2

      I appreciate quality management too. That's why I prefer to be managed by someone who has been in the trenches with the rank and file. The worst managers I have had have been ones who did not understand the work of the people they were managing.

      However, you bring a valid point to the discussion. It's a two-way street. If you cannot explain to a manager (who has the ABILITY to understand) in English what they need to know to make decisions, you can't expect to be managed well. You need to be able to "manage the manager". On the other hand, if your manager is technically inept, no amount of explanation (or pain killers) is going to help.

      Technical people who even WANT to be managers are few and far between. Even rarer, the person who is an adept programmer AND an adept business administrator.

      Programmers tend to be arrogant. That's the nature of the beast. To the extent that Cliff can learn to stifle his arrogance and learn to appreciate the talents and abilities of non-technical people, he'll be a real asset to our industry.

      Vortran (technical guy who does NOT want to be a manager!) out

      --
      Knowledge is like ignorance.. too much can be just as bad as not enough.
    5. Re:How to NOT be a manager by SLot · · Score: 1

      Seems that communication is the key for both sides. My gf is a PM, and here is what she had to say after reading the comments in this article:

      Interesting in that it's only from a technical standpoint. Notice how
      none of them say, "Well, as an engineer, I refuse to give the project
      manager any information that would actually be useful to their job.
      That way, they have to take a broad guess based on riddles I give them
      regarding how long it will take to complete. Then I have someone to
      blame if my programming takes longer than I thought, or the product
      isn't what the customer wanted."

      See, I am the type of project manager that knows my engineers know how
      long it takes to finish something. Whatever timeline they give me (if I
      pull a rabbit out of a hat and actually get a timeline) is still padded
      slightly to allow for any last minute problems that crop up. :)

      (Note that these were her opinions/experiences, don't bother flaming me.)

    6. Re:How to NOT be a manager by clearcache · · Score: 2

      Well...if the product isn't what the customer wanted, then the blame can fall one of two ways:

      a) Either the customer didn't communicate what they wanted correctly...in which case the programmer bears very little responsibility for the problems. The burden for getting a clear picture of what the client wants rests upon the client and the internal client-liason...generally the sales staff and the project staff. (If the programmer is a client-liason, then they do bear some of the responsibility here.)

      - or -

      b) The client communicated it effectively but the big picture was never fully realized by the TEAM. In this case, the fault lies both in the project manager and the programmer...probably the result of poor communication.

      The problem with the statement "then I have someone to blame if my programming takes longer than I thought, or the product isn't what the customer wanted" is that it sets up a naturally adversarial relationship between project managers and programmers. Everyone needs to take part of the blame when projects fail. The non-technical project manager should be involved in a project deeply enough to understand what stages of development the product is in, understand the implementation of the feature set, and help to plan an appropriate testing/staged release schedule with the programming staff.

      If that's happening, and the project manager and programming staff have a clear idea of what the client needs, then what excuse is there to have a project fail? If the project fails at this point, it's usually a breakdown in the TEAM. What is gained by trying to point a finger at some single person or group...at that point???

      The further problem is...if this isn't realized and communicated at some level by the company...in a "post mortem" dissection of the project's successes and failures...it means the company does not have the necessary mentality required to learn from its mistakes and take steps to prevent history from repeating itself. ...not an environment I would keep myself in for very long.

      Some of the most professionally valuable projects I have been involved in have been ones where we completely dropped the ball...for one reason or another...and then had a constructive meeting after the fact to implement change in process flow. It takes a project that may have lost $ for the company and turns that loss into an experience that should help us make more $ in the future...by streamlining project process flow.

    7. Re:How to NOT be a manager by Anonymous Coward · · Score: 0

      Hum, sounds fishy.
      No you sound dorky.
      As someone who hasn't actually managed a project, you're in no position to assess the situation.
      No _you're_ in no position to assess the situation. What did you do before you got your first project to manage dumbass.
      No, the barrier is being an egotistical programmers who thinks that they're better than non-technical people.
      No that's I thinks you nots thes barriers. The barrier is your self confidence.
      I'd hate to work with you.
      I'd hate to work with people who hate to work with people...

    8. Re:How to NOT be a manager by Anonymous Coward · · Score: 0

      I hope you realize that you're a freaking idiot troll.

  60. People Skills by Retard+Sevant · · Score: 2, Insightful

    The main reason highly technical people do not get PM jobs, or any high management job for that matter, is becuase people generally do not speak in binary.

    If you can not sell an idea or explain a problem to business management, they are not going to hire you to lead up there technical crew. How would they then understand what the group is doing? EVEN if the PM is a ditz, they at least THINK that they have a handle on the situation. Most technical people I know have people skills that end with video conferencing with their "clan" of Magic players.

    Image is everything in upper management.

  61. ANYBODY KNOW WHERE TO GET WORLD CUP STREAM? by Anonymous Coward · · Score: 0

    Any streaming sites out there for the Germany/USA match?

  62. Get a new job by Pedrito · · Score: 2

    Sounds to me, from your description, that your company has a bad attitude towards software development. If they're not willing to listen to the developers (and again, from your description, it sounds like this goes above just the project managers), then it's going to be really tough to change the tide.

    I've worked in places where non-technical people were the project managers, and invariably, they were bad project managers. I'm not saying there aren't good ones out there that aren't technical. I just haven't met any of them.

    Not all developers make good project managers, by the same token. I found I wasn't particularly good at it. I'm just not organized enough, and personally, I prefer the development aspect. The one advantage I did have though, was that I listened to the developers, and I understood the issues. I knew what was possible and what wasn't. I knew when developers were being realistic and when they were unrealistic, same for management. Fortunately, I was able to bridge the gap between upper management and the developers pretty well, and I was able to manage the expectations of upper management.

    If your current company is unwilling to bridge that gap, then your situation is probably hopeless, and you may be better served at a company that knows how to develop software properly.

  63. schedule & budget are arbitrary anyway, right by tomatobasil · · Score: 0

    So the little PM wants absurd things ? Chances are that your project schedule and budget are arbitrarily determined from above anyway. When the schedule is determined by the big boss's promotion schedule, and the budget is determined from how much is left over after they pave the parking lot, well, maybe the best option is to put in your 40, shut up, and be happy. Oh - make sure to not to take any stock options as pay.

  64. Re:What is WRONG with you Pussy-Ass Americans? by Anonymous Coward · · Score: 0

    If America started to execute retards, there would be 5 people left in the entire 50 states. Actually, maybe its not a bad idea.

  65. Not Quite by BoBaBrain · · Score: 5, Insightful

    Has anyone else found the barrier to project management is their technical knowledge. How did you get past it?

    Absolutely not. Although I have suffered the problems you mention.
    I have found that these are more often due to poor communication between PM and coder. It's the PM's job to direct the project to a successful completion while keeping an eye on resource allocation. It is the techie's job *clearly* explain the technical restrictions and options.

    If you are relying on one team member to have *all* the necessary skills, then you do not have a real "team".

    --
    I am a Karma Library.
  66. Engineers are NOT Project Managers by Thunderheart · · Score: 3, Insightful

    Whether its IT, Municipal drafting Electrical or whatever, Engineers (regardless of how long they have "managed" projects) are NOT Project Managers. You frustrate the hell out of me. I've been a Professional Project Manager for years and an Amateur computer geek. The thing that always stuck in my craw is the assumption that just because a person knows an Engineering Discipline that they automatically know how to manage projects. Project Management is a complex discipline and to manage projects well takes a solid educational background in that arena. It is a skill set unto itself. Document Controls, managing Gaant charts and schedules and (especially) managing the "people" end of things takes a great deal of effort to excel at. But NOOOOOO, Engineers always assume that because they can conceive a project, they MUST be able to manage it, and it always ends up as a grand jitterbug called, "Crisis Management". Now, don't get me wrong. Its not like I hate engineers. Many of my friends are engineers. I have spent most of my life working in and around engineers. Engineers are not Project Managers. Project Managers are Project Managers Engineers have to concern themselves with managing details. Project Managers have to manage the "big picture". In the end, if a correct perspective was given to the Project Management Profession was given more respect (or even an open minded consideration) a LOT more projects would complete more successfully.

    1. Re:Engineers are NOT Project Managers by markmoss · · Score: 2

      There is one skill that good engineers and good managers share - that's communication. I wonder if part of Welshdave's problem is that he can't explain anything about his work to non-techies. At least, that seems a bit more likely than that no one in management is listening... If you can't explain the technical issues to non-techies, you'd better pray you never get into anything resembling management, because a manager's first job is keeping his superiors informed. And stay away from small companies, or you will have the CEO walking into your cubicle and asking you what the hell is going on - I've spent 15 years in small companies, and being able to answer that in a way even an MBA can understand is absolutely vital unless you're buried in a big enough organization that someone else will answer...

      I'm a hell of a good engineer, I can explain technical issues to non-techies, I understand management issues more than many engineers, and I'm still a terrible manageer. I learned that back in the Air Force, where they kept trying to promote me out of fixing the radars to managing the technicians... I'm so bad at it, that if I was forced into a project management position on a critical project, I'd sell all my company stock before that became "insider trading". ;-)

      Some of Thunderhearts examples are bogus: Gannt charts are just a different sort of flowchart, the biggest challenge isn't handling the chart but understanding the stuff you are entering. An engineer ought to be better at creating the Gannt chart than a technically-challenged manager. But with only the average engineer's people-handling skills, you aren't going to get the resources that chart shows you need from other departments...

      PM's have to understand the way things look from upper management's perspective. Without that, you can neither communicate with them or appreciate their main concerns. Example: we were having problems with the motherboards for a touch-screen voting system. A straight engineering decision would be to shut down the line except for test quantities until everything is perfect. A management decision is to consider that, considering all the other steps after the boards are built (assembling into systems, delivering the systems, training election workers), the first Tuesday in November is already close. Also, we have 50 people working on that line - lay them off, and we won't have half of them when we're ready to start again. So we scrambled to fix the production process as fast as possible, and now we're going back and fixing the earlier production while continuing to crank out the new boards. It costs, but anything else would have crashed critical deadlines.

      PM's have to handle being pulled a dozen different ways at the same time. The customer is calling and needs to be reassured, your boss is calling (ditto), some engineers need a sign-off right now, and others are running off in the wrong direction. I work best when I do one job and get it finished before starting the next one. With the shit my boss has to handle, I'd have a dozen things half done and forget where I was in every one of them...

      OTOH, the theory that a manager only needs to know how to manage is wrong, wrong, wrong. I've been exposed to the pure form of it just once, when I was just starting out as a technician in the air force. SSGT X was a former B-52 tail-gunner who had been grounded for a little heart murmur. So they retrained him as a tech. We were in tech school together, and since I was the closest to him in age and the only other student with children we became friends. Then we arrived at our first duty assignment, and they were short of NCO's. So while I was still in on-the-job training (finding out that 90% of what they taught in tech school was wrong) and officially not supposed to do anything without a trainer watching, SSGT X became my supervisor. He spouted that "You just have to know how to manage" line and proceeded to get into trouble. To his credit, he kept his problems from impacting the workers - but he got so overstressed he totally lost it at home. His wife showed up on our doorstep blubbering something about him going crazy and kicking the cat to death - I'm not sure which of them was crazier by that time, but I called up the chaplain to get me out of the middle immediately!

      If you don't know what you are managing, you are going to screw it up big-time. The PM doesn't have to be an engineer, but does have to understand how engineers work and the requirements and time needed. The two-man management team (PM & technical lead) might be the best choice in many cases.

    2. Re:Engineers are NOT Project Managers by Thunderheart · · Score: 1
      Thanks for replying, but Ive got some issues...like this is crap:
      Some of Thunderhearts examples are bogus: Gannt charts are just a different sort of flowchart, the biggest challenge isn't handling the chart but understanding the stuff you are entering.
      Im not talking about dinky little projects - - Im talking about Monster Multi Million Dollar Projects. Any PM who knows his stuff knows that ANY schedule is worth crap. All the Document Controls on any project are living documents and require constant attention. Thats where the skill comes in. I agree on the point about communication though. Skilled Communication is key to any success.
    3. Re:Engineers are NOT Project Managers by Anonymous Coward · · Score: 0

      But if you were smart enough to do both... think how much spiffier you would be.

    4. Re:Engineers are NOT Project Managers by Lexic0n · · Score: 1

      "I have spent most of my life working in and around engineers."

      Really? How does that work exactly?

    5. Re:Engineers are NOT Project Managers by Thunderheart · · Score: 1

      Then I would be very spiffy =) Seriouslly though, I think being a good PM and being a good project manager are on different ends of the thought spectrum Engineers need to think linear and to cover all the details (sans the chaos of coders) while a good PM needs to look at the broader picture and depend on his team to execute their responsibilities (the details) correctly...

    6. Re:Engineers are NOT Project Managers by Thunderheart · · Score: 1

      Well, I was born into a family of Contractors. So my first exposure was to Structural Engineers and Inspectors. My mom remarried to an Electrical Engineer (who worked for Bell Aerospace - - very cool dude) and all his friends were Engineers. Then I went into Construction (go figure) and worked with Electrical Engineers, Structural Engineers, Architects, Mechanical, Civil, etc etc... Then in 1998, I moved into the telecommunication industry and actually re-designed the whole A&E process (I was the Construction Project Manager and Environmental PM - - I had to wear two hats....that actually equals about 30 hats.)

  67. I've worked for some GENIUS Project Leaders by Anonymous Coward · · Score: 0

    The best project managers have a great understanding of technical issues, a clear thinking head, and a willingness to argue their side.

    I've also worked for some shit project managers:

    I've worked for 'Add up and divide by 2' managers. They listen to two opposing viewpoints and suggest the exact middle ground.

    Hierarchical database vs Relational?
    Lets store this part of the data in an hierarchical database and this part in a relational.

    I've seen project managers concentrate on what they know to the exclusion of real work:

    One project that needed a decision on the programming language to use (Java or C++), instead he spent the two hour meeting discussing the *layout* and *typeface* of the specification.
    It quickly became clear he didn't know what a compiler was. But he did know how to format a mean Word 6 document!

    You're in a no win situation, find another project.

  68. Dev-PM and back by ColG · · Score: 1

    The obvious question is why? As a developer who became a project manager by default/accident one day, I'm still trying to find my way back. Anyone know how to do this apart from the obvious one of screwing up a project and getting myself fired?

  69. Conflict resolution in the evil parallel universe by Anonymous Coward · · Score: 0

    When the leader is killed, everyone moves up.

  70. No by Anonymous Coward · · Score: 0

    But you can read the live text comentary at http://news.bbc.co.uk/sport3/worldcup2002/hi/match es_wallchart/germany_v_usa/default.stm though. Germany 1 - 0 up on the 38th minute. 43 minutes.

  71. Project Management & Technical Knowledge by mjlesko · · Score: 1

    The one thing I've missed so far in this thread is what a Project Manager (PM) can bring to the table to help their technical staff.

    Frequently, at least on smaller projects, the PM is the Team Lead. Realizing then PM's often do not have technical knowledge what can they do? Simply put: define a schedule of milestones with clearly defined short-term goals. By clearly defined I mean is either done or not-done; a 1 or 0 if you will. Track these goals. Revise the schedule and keep it visible to the team (put it in version control!).

    Also, estimates while necessary are usually meaningless; at least I have seen very few accurate project estimates. Reason being that they are only based on experience (if lucky) or wild assed guesses. Until you have tracking in place for prior timelines on that project or other similar projects, where you can then use empirical data to make your estimates, making them good is black magic at best.

    Tracking then is where a PM also adds the most value for a technical team. Many times I have seen the "schedule" issued as if it were the 10 Commandments given to Moses by God, only to see it abandoned because no tracking, or God forbid, revisions were done along the way.

    So to recap for PMs out there to help their technical staff:

    • Create a schedule with clearly defined success criteria at each checkpoint - call them "inch pebbles".
    • Track progress against that schedule.
    • Revise often & keep it visible to the team.
  72. getting past the tech 'head' by Ora*DBA · · Score: 0

    I think developers (or DBA's :-) ) make better project managers than MBA's, *provided they understand business*. That means a) speaking to business managers in their own language and understanding their problems and perspectives and b) understanding what execution is. Honeywell's CIO defines it as. "aligning strategy with reality, goals with people." Take that philosphy as a project manager and, if you have any people skills at all, you will be a raging success. And on't forget to sweat the details!

  73. different set of skills by Anonymous Coward · · Score: 0

    a set which your technical skills may add to or subtract from... Maybe you should actually find a decent project manager, better yet a genius PM, and get yourself assigned to his/her projects and use him/her as a mentor. It is not the same skill as programming by yourself or even running a small team of "buddies".

  74. Re:Get a new job by TheShadow · · Score: 1

    Where I work there are three project managers. One is really good... one is decent... and the third just sucks. The good one is not technical. The other two are.

    The reason why she's good is because she knows how to be a MANAGER. Good managers realize their strengths and their limitations and rely on the people they are managing to fill in the gaps. She is extremely good at listening to client requirements and when a developer tells her that something is impossible or unrealistic, she is not afraid to tell that to the client. Because there's no BS on her projects, the client almost always (unless they are unrealistic people) comes away happy with the finished project because they weren't lied to and their expectations were MANAGED to be realistic.

    It takes a certain type of personality to be a manager... most engineers don't have it.

    --

    --
    "What do you want me to do? Whack a guy? Off a guy? Whack off a guy? Cause I'm married."
  75. My Boss is a lousy developer... so what? by Qbertino · · Score: 1

    My Boss is a lousy developer. He's often nagging about "wouldn't just a threeliner workaround do the job?" and stuff like that.
    But when things get tight and I'm willing to stand a fight, he shuts up and listens and usally keeps the customers of our back - our argues with them. The other side is of course that if he hadn't promised "the blue from the sky" - as we say in germany - we wouldn't have gotten into the corner in the first place.
    Bosses are that way. Their sellers, and if they stay fair with me and pay my roll, I'm the last one complaining about them being lousy developers.
    A PM has to be a bit of bouth. Pushy to the devdept., but ready to listen to a well prepared (not only the PMs and CEOs doing rubbish, mind you...) argument from R&D - if marketing and R&D work the slightest bit together in that way, things usually turn out well in the end.
    If not, companys usually go belly up when VC runs out the latest.

    Think about what category yours belongs to (and what category of developer you are!!!) and act acordingly.

    --
    We suffer more in our imagination than in reality. - Seneca
  76. Read XP Explained by foo(foo(foo(bar))) · · Score: 2, Insightful

    Pick up a copy of Kent Becks' book Extreme Programming Explained: embrace change.
    Where I work, we are in the same situation, both our project managers and sometimes our staff managers have no technical experience.
    I can tell you that technical folk managing projects doesn't work. What this did to us is cause the project managers to do very little, other than sit around and mandadate scope and delivery dates to the technical lead, who has to then force their developers to produce crappy software.
    So, while I don't have a solution, the XP book at least give me hope that there is a better way...

  77. Show downstream effects by HybridTheory · · Score: 1

    what you need to do in a situation like this is show management and the PM the downstream effects of their decisions.

    First step is to document the SDLC process, including how to handle Change of Requirements.

    Whenever PM requests changes to process, simply send email to PM "I understand that you want us to skip testing phase for project..."

    When things explode further down the track, you will have the data to go back and explain why things have turned to custard. Schedule a project review meeting, and make this info (internally) public

    Over time, you should be able to demonstrate significant difference in outcomes between projects executed according to process, and those where process steps were missed (not just testing, but perhaps time to redesign given change in requirements, or even just to design at all)

    Once the value of the process is proven, you can then make it very difficult for PM to force a project to step outside of the process.

  78. Re:What is WRONG with you Pussy-Ass Americans? by Retard+Sevant · · Score: 1

    How cute.

  79. Another Company just like that .... by jasonrfink · · Score: 0, Troll

    I heard there is another company with that problem, the uri: is here.

  80. Project management is bullshit anyways by Pig+Hogger · · Score: 0, Flamebait
    I knew that, but it was brillantly confirmed by a class on computer project management I took 2 years ago.

    The teacher was a moonlighter, having a day job for the political police as a senior project manager. First of all, the class had three times the ordinary number of people, so we wasted three weeks splitting the group in three.

    Then we had to work on our projects in teams of 10 people, which made managing the meetings as much work as doing the project itself.

    Then I was canned, because when you're 38 years old, you just cannot learn by heart a 50 paragraph text like a 18 year old can (and then the teacher said that there was plenty of erroneous information in the text). I was canned despite our group project ending at second place when it was evaluated by the second in command of the political police...

    So, if you like bullshit and nonsense stuff, go for project management.

  81. Programmers tend to lack project mgt skills by Kaellenn · · Score: 1

    A large part of the problem employers have with putting programmers into project management roles is that though programmers do have more experience directly with the types of projects they'd be managing, they don't necessarily have a good familiarity with the responsibilities of managing a project.

    Rather then simply suggesting to senior management that it might be a good idea, you need to familiarize yourself with project management skills and requirements. That way, when you approach senior management, you aren't just the employee looking to control his own destiny...you're a guy who took some initiative to prepare himself to take on more responsibility (sounds a lot better, doesn't it?).

    Since you mentioned that you're a web developer, I'll give you a place to start. Kelly Goto (http://www.gotomedia.com) is an expert in the field of Web Development project management. Her book, Web Design: Workflow that Works is an excellent starting point and reference for web developers looking to get into project management. I have read her book, and seen her speak at several conferences, she is clearly a person who has made the transition from web developer to project manager.

    Hopefully, this info will help you get started on the path to managing your own projects! Good luck!

  82. Project mgrs by orudus · · Score: 1

    Holy crap. You just spelled out my daily reccuring nightmare with my project. I am not however an IT prof. I am an Electrical Engineer. But here is the jist, if you take a project management job, and know nothing about your product, or the technology behind it, you better learn FAST. And if you use any excuse as to why you don't need to know that much, you are only hurting yourself and the company. You can only help yourself by staying educated about your product. I think it would also keep your customer happy if you know what you are talking about!

  83. Give your boss the information you have... by Anonymous Coward · · Score: 0

    This is not a magic answer, and it doesn't always work, but: if you want your boss to understand why you come to the conclusions you come to, make sure your boss has the same information you have.

    This won't work if, for example, your boss does not WANT the information. It also won't work in a basically dishonest situation (one where your boss is not levelling with you.)

    Still, there ARE many situations where communications can help.

    In the case of a nontechnical manager, for example, gradually feed him technical information at a level he can understand and use. Most nontechnical managers DO want to understand something about what they are doing. Cynically, one might say they want to LOOK as if they understand, but the most effective way to look as if they understand is to ACTUALLY understand...

    Don't challenge his authority ("you're nontechnical, ergo I don't accept your authority,") help him to do his job better.

  84. Nothing beats a good PM by hagbard5235 · · Score: 5, Insightful
    I know that there are a lot of rotten PMs out there, but if you ever have the good fortune to work on a project with a good PM you will never willingly work on a project without one again.

    I miss my PM. Her job was basically:

    • Beat up other people to get us the resources we needed to succeed
    • Block outside people from bothering us about things so we could work on the project
    • Keep track of the pedestrian details of the project so that we were free to actually get the work done

    When prototypes for the project were running late, I didn't have to spend endless hours chasing people down and tracking the issues delaying them. My PM did that.

    When the project had slipped 6 weeks, I wasn't the one on the calls getting yelled at and yelling back about the fact that more than 50% of the TYPES of prototypes we needed hadn't even been delivered yet. My PM did that. I was down in the lab working.

    When I had to attend technical calls ( like bug scrubs ) I didn't have to go dig up the bugs being covered so I could review them for the meeting. My PM always met with us 30 minutes prior and went over the list so that we could get things clearly in mind going into the call.

    And when the shit hit the fan, and we were death marching till 2am for weeks on end, my PM was there making sure we got fed ( on the company dime ), and staying late to make sure we did eventually go home and sleep.

    None of this really requires much technical skill on the part of the PM. All it requires is a respect for the team and an understanding that the most effective way to get your project in on time is to support the team. By the middle of the project we ( the technical guys ) where willing to kill ourselves to meet the project objectives for this PM.

    1. Re:Nothing beats a good PM by paranoic · · Score: 1

      You're right. Project management is all about managing people. Technical knowledge isn't really a big part of it.

    2. Re:Nothing beats a good PM by 52292 · · Score: 1

      Nothing more to say. That's the way it should be.

      Developers as well as other people involved, eg. sales personal, production etc. tend to see mainly THEIR part of the world.
      A PM has to see ALL of it and has to take all sides into account. Even if one excludes the other.

      He or she does not have to be a crack in every discipline but he or she should have a decent knowledge, better a decent experience.

      Please, fellow developers, please try to understand that our point of view is not the only imprtant part.
      Same to you other guys and girls, no matter if you work for sales, service or whatever.

      The PM has the hardest job: getting everything together.

    3. Re:Nothing beats a good PM by Anonymous Coward · · Score: 0

      Stop taunting us with myths...

    4. Re:Nothing beats a good PM by Mr.+McGibby · · Score: 1

      I personally like to call this the Christian management style. Now don't flame me because I brought religion into this, I didn't. *One* of the things that Christ taught was that the master is the servant of the served. This is why he washed the feet of his apostles. A good leader is there to help the group to get their job done, not to "be in charge". That's called a power trip. While *occasionally* this requires kicking one of the team members in behind so that all do not suffer, most of the time this means that the leader of the group is there to serve the team.

      --
      Mad Software: Rantings on Developing So
    5. Re:Nothing beats a good PM by Anonymous Coward · · Score: 0

      Are you talking about your girlfriend?
      Beat up other people to get us the resources we needed to succeed
      Block outside people from bothering us
      ..

    6. Re:Nothing beats a good PM by patrickje · · Score: 1

      Wow, do we know the same people? This sounds a lot like a PM I've worked with.

      Good PMs do a lot of crap work, whether it is issue prioritization, dealing with clients, chasing down budget, stopping upper management from stealing developers for just 'this' report, or supervising user testing.

      PMs do not need to be technical, that's what the (Lead Developer/System Architect/Development Manager) is for. Once you've seen a good PM, it's hard to work without one, because you usually have to do the work he/she was doing.

    7. Re:Nothing beats a good PM by tyen · · Score: 1

      If you (especially hagbard5235 and patrickje), had a good PM that has since moved on but you are still in touch with them, please let them know that my company is looking for PM's that are getting kudos from the developers/programmers that work with them. Please have them email me if they are interested.

  85. That's dangerous by jmony · · Score: 1

    I study in Cumputer Sciences in a North American University, and most of the professors here don't know what an e-mail client is. Then, they tell their graduates students to code stuff they couldn't do themselves. And some most of the graduate students don't really know how to code. Then, these people become project managers. As an undergraduate and employee, I'm afraid about the day I will work for one of these persons...

  86. Join the club by Cybrdrag · · Score: 1

    I know where you are coming from. I have dealt with inept project managers in the past. There really isnt much you can do, unless your project manager will listen to you and your suggestions. And that is a 50/50 shot at best. The only thing you may be able to do, depending on your corporate environment is talk to the project manager's superior and see if they can help. If that is not an option, the project team can appoint a "shadow" project manager that does understand how things get done and have the "shadow" try to work with the real project manager. Its just a thought. All else fails, do what most of us do, grin and bear it.

  87. I couldn't disagree more... by gustar · · Score: 4, Insightful


    As someone with both extensive technical background and solid leadership and project management skills I can state for a fact that my ability to successfully envision, flesh out (e.g. requirements and design documents), estimate and plan (e.g. develop project schedules and resource estimates which I then translate into MS-project) a project or development effort is inextricably linked to my understanding of that project and its technical underpinnings.

    Over the course of my career I have dealt with legions of formal "project managers", (folks who are pure project managers lacking any technical background) and I have yet to realize any value in my interactions with any of them, beyond the occasional willingness to record meeting minutes.

    To date I have found them to be glorified secretaries, whose primary tactic is to latch on to knowledgeable people and not only drain information but actually get them to perform the real tasks of project management, such as scheduling and resource estimation.

    In addition, many of these folks like to act as middlemen, brokering information and jealously hiding their sources so people must go to them for information. This would not be a terrible thing if they actually understand the project and had the knowledge required to effectively answer questions and communicate the status of the project accurately but that is very rarely (never in my experience) the case.

    In my own experience, I have had a number of project managers assigned to various efforts I was responsible for, ostensibly so I could focus purely on the development effort and on technical leadership. In every case I have spent months working with a non technical project manager, spending 3-4 hrs a day with this person reviewing (creating) the project plan and having to spoon feed information to them (essentially so they could answer questions in meetings) as well making detailed suggestions about how they could overcome some obstacle external to our group that was needed in order for the project to succeed. In the mean time while this significant chunk of my time is being invested into sharpening my puppeteering skills the formal project manager has been horrible miscommunication project requirements and status to other groups.

    So in short order these folks are out and I'm back attending meetings and working with external groups as well internal.

    The primary factor behind the ineffectiveness of these folks is there complete lack of technical background. Successful project management is not just about writing up project plans and throwing dates and times down, its about understand the underlying objectives, as well as the pitfalls and obstacles in the way of those objectives. It's about understanding the project goals thoroughly enough to be able to determine what tasks are required to accomplish the project and making resource estimates that are realistic and effective.

    This understanding and affinity for the project is something formal project managers very rarely have.

    1. Re:I couldn't disagree more... by Anonymous Coward · · Score: 0

      brokering information and jealously hiding their sources so people must go to them for information. Sounds like object-orientated management.

  88. Read up on project management by Jeppe+Salvesen · · Score: 2

    Before you apply for project manager, read up on project management. To me, it sounds like the entire company is fundamentally flawed, and becoming more senior will only worsen your day-to-day life. This book will help you figure out if there's hope. Carefully assess the situation before you make a dangerous leap.

    --

    Stop the brainwash

  89. Try Using eXtreme Programming by poiu · · Score: 2, Insightful
    http://directory.google.com/Top/Computers/Programm ing/Methodologies/Object-Oriented/Extreme_Programm ing/

    I have found that an excellent way to get project owners more involved with doing things the right way is to use Extreme Programming

    1) write the tests first (i.e. define the interfaces for the code that is going to be implemented first ... this focuses you to think about design up front)

    2) short iterations - keeps the project in synch with the owners expectations. If an itteration is 2 weeks (my usual cycle), then the owner is always on top of whats going on

    3) continuous integration - everyone must checkin as soon as they've written the code the completes their current task (tasks should never be longer than a day or two). So, if something breaks at most you've only got a day of code to go through and find out where the bug is. And, since you're writing the tests first (i.e. JUnit or its clones http://www.xprogramming.com/software.htm)

    4) Simple design. Never add code that you don't need right now, because you think it will make adding a future feature easier. Often requirements change. The best case is you guess right and you've already done the work by the time you get to that feature. However, if you're even slightly wrong about the feature, then you'll have to rework it anyways, so don't do it ... ever.

    All of these play together to make the boss or project manager more involved (not what you wanted to hear), but in return you usually get more control (including testing) because the tests are actually part of the design process and have to be written before any code is.

    Good Luck!

    --

    ---
    "Don't anthropomorphize computers. They hate that."
  90. Get him to read the King's tale by Glorat · · Score: 1
    Extreme programming parable

    Once upon a time ...

    ... there was a great king who desired to give a State Dinner for a few thousand of his closest friends. He called in his Chief Artisan and informed him of the dinner plans. The king described how he wanted the finest table settings, all in gold and encrusted with intricately carved jewels. The Chief Artisan did some sketches and agreed with the king on what the settings would be like. They agreed to meet again in a few weeks and look at the schedule for production of the table settings.

    A few weeks went by, and the Chief Artisan came to report. He showed the king a time schedule showing creation of prototype settings, review by the king, and production of the final table settings. The schedule showed that the settings would be finished in November, but the king preferred to have the party in October, when the weather would still be fine. The Chief Artisan agreed to adjust things for completion by October before the next meeting.

    On schedule, the Chief Artisan appeared with prototypes, and a revised schedule for production, showing completion by October. The Chief Artisan also recommended that they meet at regular intervals to check progress. The king reviewed the prototypes, which the Artisan had simplified because of the shorter deadline. The king requested more cherubs on the plates, more beautiful carving on the embedded jewels, and more complex scrollwork on the knives and forks. The Chief Artisan protested that these new features would jeopardize the schedule, but the king reminded him who was king and who wasn't. The Chief Artisan withdrew.

    At the next project review, things were measurably behind. There were too few jewels ready, so that the plates were not complete, and there were far too few knives and forks done. The king demanded that the artisans work harder. The Chief Artisan protested, but the king again reminded him of their relative positions. The king demanded additional reviews, even more frequently than already agreed to.

    At the next review, not much more was done. The king insisted on visiting the shop to see what was being done. The next day he arrived. The artisans were a bit nervous, but they knew their arts and mostly continued with their normal efforts.

    "What is that man doing?" asked the king, pointing out an obvious slacker.

    "He is resting his eyes and hands, O King," replied the Chief Artisan.

    "An egregious and insulting waste of Our time," declaimed the king. "They should rest at night, not while working."

    "It shall be as you say, O King," answered the Chief Artisan.

    "And that man over there," asked the king, "what is he doing?"

    "He is sharpening his tools, O King."

    "Again a waste of Our time. No wonder you are accomplishing so little. Henceforth, tools are to be sharpened at night, not on the job."

    "As you wish, O King," sighed the Chief Artisan. They parted until the next review.

    Halfway to the next review, the Chief Artisan sent to the Chief Steward, requesting some new apprentices to help with the work, specifically with sharpening the tools. The Steward, mindful of the King's budget, solved the problem in the age-old way of Stewards, by not replying to the request.

    At the next review, more work was in fact completed. The king inspected the pile of completed plates and utensils. At first he smiled in satisfaction, but as he looked more closely his smile turned to a frown. "These plates," he growled, "the cherubs are rough, not fine, as were the earlier plates. Our guests will not be suitably impressed if this is the best you can do."

    "The work is rough, O King, due to the use of dull tools, as you commanded."

    "We did not command you to do poor work, Artisan, We commanded you not to waste time!"

    "O King," the Artisan explained, "just as Your Majesty cannot have a good party without good food and settings, my artisans cannot create good art with dull tools."

    "Must We tell you everything?" screamed the king. "Have someone else sharpen the tools!"

    "I have requested new apprentices for just that purpose, O King, but the Steward has not responded to my request."

    The king roared, "Do not bother Us with these internal matters, Artisan. We are the king. Allow the artisans to sharpen their tools as needed: but they must make up the time by working overtime."

    "It shall be as you say, O King," responded the Chief Artisan glumly.

    The king returned to the inspection. Soon, he was again enraged. "These plates, many of them do not yet have their carved jewels. What is wrong here?"

    "There has been increased spoilage of jewels, O King," replied the Chief.

    "What is causing this," boomed the king, "Are your people so completely incompetent?"

    "With all due respect, O King, jewel carving is a delicate task. Without frequent rest periods, the carvers eyes tire and their hands shake, resulting in spoiled work."

    "You tiny fool," boomed the king. "you must punish the workers who spoil my precious jewels. Clearly they are not being careful enough."

    "It shall be so," bowed the Chief Artisan.

    At the next inspection, the king swept into the area filled with suspicion and with a visible air of challenge. When he saw that quality was improved in the carving he calmed a little, and when he saw that most of the plates had their jewels, he became almost happy. Then, however, he counted the stacks of completed work and found that while quality was up, not as much work was completed.

    "What are you doing wrong now, Artisan? Must you yourself be punished?"

    "O King," replied the Chief, "several of my key artisans have become ill from the punishments You ordered and cannot work. As well, a few have left the kingdom and gone to the neighboring kingdom, saying that their work will be more appreciated there. As a result, we have fewer workers and can produce less work."

    "We ordered that your artisans work overtime," roared the king, "has there been no improvement from this?"

    "In fact the reverse has happened, O King. Again, there have been those who have left the kingdom in search of a place where they will be more appreciated. Those who remain are mostly from the lower ranks, and while they are energetic, they lack the experience to do the work you require. And as they tire from overtime, again there has been spoilage and lost work."

    "This is unacceptable! We are most disappointed in you, Artisan. Return to your quarters and await our decision as to your fate." The Chief Artisan withdrew, certain that his days were at an end.

    The king was mightily concerned. The Chief Artisan had failed him, and surely must die. Yet the State Dinner was important and the settings must be completed. And, though the king hated to admit it, the Artisan had tried mightily to do as he was commanded. The king decided to consult his Wizard, who had been his mentor and sounding board since his youth.

    Before he could summon a messenger, a loud explosion and a cloud of smoke announced the arrival of the Wizard. It was said that the Wizard always knew when people thought upon him.

    After jumping a bit, the king wasted no time. He described the events surrounding the dinner, then stated his concern. "Wizard, it seems to me that the Chief Artisan has disobeyed me and must die. And yet, do not We bear some of the blame for the problem through Our inability to advise him properly? And in any case, without the Chief, how can Our artisans possibly prepare for the dinner?"

    The Wizard reached up and plucked a pigeon from thin air. Drawing his dagger he contemplated viewing the pigeon's entrails for insight, only just in time remembering that he was in the throne room. Stuffing the pigeon into one of his capacious pockets, he instead snapped his fingers, producing a brief flash of flame followed by a plume of smoke. He observed the smoke as it dissipated, discerning patterns that only he could see. At last he turned back to the king.

    "Majesty, I have long studied these problems and can offer some insights. There are four, and only four, Aspects of work which we must consider. And these I call Resources, Scope, Quality, and Time. Immutable laws of nature relate these Aspects. Let us consider them and how they are related."

    The Wizard went on: "I call the work Your Majesty demands, the sum of all tasks, Scope."

    "A curious name, Wizard, but I am familiar with your arcane ways. Go on," said the king.

    "Consider now the Resources: the number of artisans Your Majesty has. If an artisan be lost, shall the work, or Scope, increase or decrease?"

    "It depends on whether the lost artisan be good or bad, and what responsibility he has been given," answered the king.

    "You are wise, O King. Yet Your artisans are quite capable, as You justly require, and surely they divide responsibilities generally wisely. That being so, what then shall be the result of reducing the Resources?"

    "We still demand what We demand. And the work must be of the highest Quality. Then it must take more Time," answered the king thoughtfully.

    The Wizard nodded. "Just so, O King. If Scope and Quality change not, and Resource is reduced, then Time will stretch out. Wise you are."

    The Wizard continued: "Now, O King, consider what must happen if we hold the Resource constant and demand that the artisans produce the same work in less time. What will then occur?"

    "They will labor harder so as to please Our Majesty?" the king asked hopefully.

    "This has been Your Majesty's experience?" asked the Wizard slyly.

    "No," the king admitted, "although they tried. At first it appeared to be working, but overall they got less done, and when We demanded more output, the work itself was poor. Working them harder only resulted in poor results, and some key artisans actually fled the kingdom."

    "Can you put this in terms of Scope and Quality, O King?"

    "Let me think, Wizard. Ah, I see it ... if Resource and Scope remain the same and Time is reduced, then Quality must inevitably be reduced."

    "Yes, O King," agreed the Wizard.

    "But this is unacceptable," cried the king. "The goods we receive must be of the highest Quality!"

    "Then, Majesty, what can be done?" asked the Wizard.

    Thinking, the king gazed out upon his kingdom. "Your questions are challenging, Wizard. But let me think, I can see through this maze of yours. Wait, I have it! You would have me realize that even I, your king, cannot dictate all four of these Aspects. If I hold Resource, Time, and Quality to myself, then Nature controls Scope. And yet if I hold Resource, Quality and Scope, then Nature must control Time. Is this your lesson?"

    The Wizard replied, "You speak wisely, O King. It is as you say. Your artisans are serving you well within the limitations given. They will apply their skills to their best ability at all times, but they cannot change this law of nature."

    "Can I then do nothing, can I have no idea what will be accomplished, or when?" cried the king.

    "Not so, O King. In his work, Your Artisan well understands the relationship between the Aspects. If You will tell him Your wishes regarding three, he can estimate the value of the fourth. And though events may change the results in detail, he can keep You informed of progress against his estimate, in time for You to prepare for the outcome. If You work with him on the Aspects, he can progress most effectively, and You can guide him effectively to the best result."

    "Well done, Wizard. You have assisted Your king, and in the doing saved the life of the Chief Artisan."

    With this, the king turned to dismiss the Wizard, only to find that he was already gone. Shrugging, the king summoned the Chief Artisan.

    The Chief Artisan entered the room expecting the worst, yet knowing in his heart that he and his workers had been doing their best. Trembling but erect, he awaited the king's word.

    "Fear not, Artisan," the king began. "I now see what you have been trying to tell me. I rely now upon you to tell me how best to prepare for the dinner I have in mind. Be aware, however, that the invitations are out and I cannot bend on the date. Would more artisans help?"

    The Chief thought briefly, then produced his answer. "We might improve by adding a small number of artisans, but this will have little effect in the time left, or may even slow us down as we teach them our methods."

    The king began to glower, then remembered what he had learned. "What, then, do you recommend, Artisan. I know that you desire only to serve as best you can."

    "It is so, O King. Here is my solution. We cannot much change our Resources, and the Time is given. Your Majesty must have the highest Quality, which leaves us with only Scope to vary."

    "You use terms which I have only today learned, Artisan," remarked the king. "Have you been speaking with my Wizard?"

    "Indeed, O King, he advises us often in how we do our tasks, which he calls Work Process. He is strange, yet his ideas have worked a powerful effect."

    "Strange he is, Artisan, strange indeed. But go on, what of Scope?" said the king.

    "Here is what we can do. We can produce all the place settings you need, of the highest quality, by reducing scope in any of these ways: we can return to the simpler design of plates which we showed you, removing the cherubs; we can provide simpler utensils, though still of the highest quality; or we can produce fewer plates or utensils. Among these, Your Majesty may choose."

    His Majesty thought, then pronounced his decision. "We will have the appetizers during the tour of the Royal Zoo. I will have the cook produce food that can be eaten in one bite, from the fingers. This food shall be served by the loveliest maidens, who shall circulate through the guests with trays. Thus we will need fewer dishes and utensils."

    "It is good, O King," said the Artisan. "Yet still the time will be tight. There remains a risk that we might not complete our task, hard though we will try." The Artisan made to leave.

    "Hold, Artisan, hast thou learned nothing? We have not as yet done Our Royal Part, if there remains risk. We shall say further."

    The Artisan waited.

    The king continued, "Yes, We have it. You will carry out all three of your suggestions, ensuring the best possible result for the State Dinner. You will make fewer plates and utensils as We have already commanded. Those which you make, you will make simpler, yet still as high in Quality as We deserve. Can this be done?"

    "Of course, O King," said the Artisan, now almost calm. "If I may suggest, we might lavish the bulk of our effort on the dinner plates, leaving the other dishes simpler, as a frame for the main course. And similarly we will keep the utensils simple, again setting off the beauty of the dinner plates."

    "Yes, Artisan, this will suffice," said the King. "Is there anything else?"

    "If I may, O King, two things. First, should anything go wrong, I crave permission to change the details of the designs to ensure delivery. I will of course inform Your Majesty immediately to be sure you agree."

    "Good, Artisan. But more: you must call upon Us for further creative reduction of your effort if it is needed. Just as We can change the appetizers, We can change the desserts if need be."

    "You are wise and powerful, O King. It shall be as you say."

    "And the second thing, Artisan?"

    "It is too soon to be certain, O King, but it may be that we shall exceed these goals rather than barely meet them. Should this be the case, would you prefer that we enhance the designs accordingly, or perhaps you would wish some small gifts for your guests?"

    The king beamed. "Now you sound like Our true Chief Artisan, supporting Us in every way. We see now that by releasing you from undue pressure We free you to do more, not less, to please Us. But let Us not speculate now. When you find that you can do more ... wait, as the Wizard would say, when you find that Scope can be increased ... see Us then and together we will decide what to do. Perhaps we will even give your people some time off ... no, this is, after all, only the 10th century. I am ahead of myself. Workers' rights are centuries away. In any case see Us, and together we shall decide what to do."

    "As you wish, O King," said the Artisan. "I am now certain that we can serve Your Majesty as You deserve." He bowed and withdrew, happy to have his head still on his shoulders, and confident that his artisans could perform as the King required.

    The dinner was a great success, and the Chief Artisan even struck up a lively friendship with one of the serving wenches. As it turned out, they all lived happily ever after.

  91. paper based by StickyPanda · · Score: 1

    Although it may not only apply to the new media industry, it seems allot of the project managers and indeed a majority of the designers/middle management seem to come from a paper based designing background - or at least the experience ive had points to this. In this sort of enviroment, the only functionality they need is that the page of a magazine turns over, the rest is all asthetics. This, to a couple of the companys I've worked for at least, is a a huge down fall, they know of the techincal background work, they're just to the opinion that it supports the foreground design work, which leads to little designing and poor to no testing beyond the scope of the developer testing it himself. Inevitably of course the company quickly realises that perhaps they should of been listening to the developers constant dribbles of moaning, but by this time, both the companys I've worked for realised this far to late.

  92. welcome to... by Anonymous Coward · · Score: 0

    ...the real f*cking world. Scope creep, no budget, bare minimum of resources provided (if that), and nothing but blame when you can't deliver the near-impossible on time. Solution? Become a manager yourself. Kind of like sleeping with the enemy, but you need to be out of programming and into managemen in your early thirties anyway, or else you become a fossil no one wants to dig up.

  93. Call CDW! by DickBreath · · Score: 2, Funny

    Haven't you seen the TV commercials man!?!

    Fred, what's the matter? We're only asking the impossible.

    CDW's television commercials suggest that they can solve these impossible problems and make everything in your organization work like it should!

    --

    I'll see your senator, and I'll raise you two judges.
  94. Programmers are not innocent in all this by Anonymous Coward · · Score: 0


    I've been a developer for almost 20 years now and it always amuses me to see complaints like these.

    Developers are funny creatures. I once did a talk where I asked the audience, all developers, to think about their favorite project. Then I asked for a show of hands from those whose favorite project had been a "success". I'd say only about half the audience raised their hands.

    We do not always define success the same way that others do. I know of plenty of developers who simple chase the latest "kewl" technology and couldn't care less if the product eventually released.

    Business requirements ARE important. Sometimes deadlines ARE hard dates. Sometimes is IS better to release a partially functional first release and improve it later.

    These are also issues that developers have a hard time accepting, but are true nonetheless.

    If the project manager says "I need this by this date" and you do not believe it is possible, then you have to negotiate. "I can do this by this date, or I can do this by that date, or we can drop this requirement and do what you want". Let the pm make the business decision but don't act like you are some sort of inert object which simply experiences bad management. A lot of times bad management occurs because developers aren't getting involved in the decision process.

  95. I am trying to marry business and tech skills. by mcwop · · Score: 2
    I have been a PM for four years. I was thrown into my job with no PM experience and no tech skills. However, I did have certain subject knowledge that qualified me. I have taken it upon myself to learn and refine the PM and tech skills.

    I started going to the local comm college to pursue a programming degree. This knowledge is extremely helpful. I have also read tons of case studies on projects to gain PM experience that way.

    In all I am becoming an effective PM with decent tech knowledge. Even if you only take a few programming classes it is very valuable. Other skills to pick up are:

    • Contract negotiation
    • Client servicing
    • Budgeting
    --

    "I don't think it's selfish, to eat defenseless shellfish." -NOFX

  96. Joel on Software has a few ideas by itsmarcos · · Score: 2, Informative
    Joel on Software has an article titled Command and Conquer and the Herd of Coconuts. It gives some insights from Micro$ofts management practices. I consider them quite accurate.

    Have a read on that and some other articles in the archive. I am sure you it will help you put your thoughts in some order. You can then give it a try (diplomatic one) and move the waters a bit.

    Just my $0.01

    --
    Marcos
  97. Wrong by Anonymous Coward · · Score: 0

    I get stuff that actually cannot logically work that I can prove cannot logically work all the time.

  98. The Dark Side. by Anonymous Coward · · Score: 0

    I have found even if the manager has a teck. background thouse unatainable requirments with no testing still happen. I see 3 posible reasons for this. 1. The manager just pretended to be a teche to get a managment job. 2. The higher income causes half the brain to shutdown. 3. They have come under the control of the dark side. (Marking)

    I belive that real tecke have no desire to be managment. If a true tecke has visions of managment inorder to control the stupidity; Think again. In the last year I have seen 4 teckes cross over to the dark side only to discover they had even less control of the project and were only supporting the evil empire. Lucky once this was discovered they returned to the light. This left upper managment in a delima. The pratice of promoting from within was not working. The current management came from ouside the group as a fake tecke and a non tecke.

    Teckes don't worrie there is ------------ Lets just say it involves a 386 and fake skin and hair.

  99. Just the reverse ... by Kope · · Score: 4, Insightful

    'm a senior project manager in a medium sized company where the programmers have no business experience of any sort. I'm of the opinion that programmers should understand the business that they're part of and want to move into programming myself. I'm aware that I may meet resistance from the current programmers - many of them have been hired with no previous experience of anything. Previous suggestions to senior management that myself and other project managers would feel better with business person programming on projects have been dismissed. As a result we are routinely told to push out deadlines or that our requirements are impossible, with an emphasis on how technically aesthetic things are rather than how well things meet the business requirements. Has anyone else found the barrier to programming is their business knowledge. How did you get past it?"

  100. Get a new job by Anonymous Coward · · Score: 0

    You stated that previous suggestions of getting a PM who knows something about the technical issues have been dismissed.

    I've been in this exact situation - same job titles, etc. Worse, I was actually the one who kept the PM looking good enough to get up the chain into that job. I paid for my mistake, let me tell you.

    Regardless, any job which involves liason between two areas (general management, and technical project details, in this case) REQUIRES a degree of experience in both areas. This is no different.

    If you company doesn't understand something as basic as that, then start looking around for a better company. They probably won't last so long, anyway.

  101. You're already got your answer by Havokmon · · Score: 2
    Previous suggestions to senior management that myself and other developers would feel better with a technical person running projects have been dismissed.

    Been there, done that. Depending on the political climate, you have have screwed yourself because you spoke out. Done that too. :(

    In my case the following occured when I realized we were lead by the unititiated, and for YEARS tried to make change:

    • I was offered a false management position (which never materialized)
    • I created an outline for a security department, which gave 'roaming' resources a home, and put myself in as Manager. I was told it was a good idea, but they wanted a Director of Security. A couple months later the telecom guy was named Security Manager. They could have at least hired someone who knows MORE than me.
    • I tried to move into programming (I was in Networking) on my own. I wrote a web app that the CEO wanted (Status info for Sales Offices), but that 'move' stalled almost immediately.

    Essentially, by speaking my mind, and giving my opinion what which way the IT area should be headed, I got labeled Anti-Microsoft (when in reality, the guy in charge would want anything MS even if it didn't really fit the need. An NBM-er.) What they really wanted was lackeys. I left within 6 months of receiving a 'Dedication to Excellence' (or something) award.

    My suggestion is to write down all the positives and negatives of your current boss, and if you were boss. If it seems to make sense, and management's decisions fly in the face of logic, just leave.

    --
    "I can't give you a brain, so I'll give you a diploma" - The Great Oz (blatently stolen sig)
  102. Managing you PM's like Non-Tech clients by oliverthered · · Score: 4, Insightful

    IT sounds to me that you project managers are behaving like non-technical clients, so treat them that way.

    Guide them through the development process, get well defined requirements.
    manage there expectations.
    Get proper business logic out of them
    So,
    'I want a button that save the file in x format'
    becomes,
    'I must be able to save the file in x format' and
    'There should be a UI component to do it'

    Then get a decent definition of the format, work through any problems with them and any possible future requirements, Set up some testing requirements. Why do they need to save the file.

    Once this is done, decide where in the UI the save file should be available from.

    It is your responsibility to ensure that the project managers do a good job. Send them back to the clients if there's something missing, set up decent procedures, make sure testing is defined with the requirements so that it doesn't get skipped, and most importantly make sure things are set out in a clear fashion that everyone understands, with out scope for ambiguity.

    --
    thank God the internet isn't a human right.
  103. i agree somewhat by Anonymous Coward · · Score: 0

    i firmly believe that if you are a manager and higher up than me, that you should be smarter than me and someone I could come to with questions. however that is not how it works in the real world.

    Managers do just that: manage. they manage a project and make sure that deadlines are being met and that the staff has what they need in order to meet those deadlines. They are not there to answer your technical questions. Managers aren't experts in the area that they are managing and not required to be. Hell I've worked with some that haven't even turned on a computer before. All they need to be is very organized, communicate good with their staff and get people to follow their leads.

    It's hard for us as IT people to have follow people tha we deem less intelligent than us. In this game we are playing, the smarter you are, the more successfull and praise you get. We don't close deals or catch the winning pass, we program and figure crap out. So for us to answer to someone who isn't on the same level as we are, is kinda a smack in the face.

    Just remember that this is a hacking club where the smartest person is the leader. This is a job and in some jobs the dumbest person leads the crew.

  104. Never mind by Black+Perl · · Score: 1

    Never mind, evidently that was just live stats. And part of it wasn't working.

    --
    bp
    1. Re:Never mind by Anonymous Coward · · Score: 0

      Unless you pay for their "premium service"

  105. Silly PMs... by Anonymous Coward · · Score: 0

    Our department (part of a large company) has a lot of project managers. The main way those people got to be project managers was by either screwing up when they weren't PMs: when you screw up, no one wants to use you on projects, so your only move is to become a PM.

    Since our company has no method of firing people unless they kill someone on the job (and even then, you could probably talk your way out of it), you get a lot of people with technical know-how, basically stuck doing all the implementation (since they are the only ones who can consistently do their job), with PMs who are, for lack of a better word, useless.

    We suffer the same maladies as the poster: PMs who don't understand how to schedule, who don't know what requirements are, care only about the look of the site, and who never follow any sort of logical process. Our quality control is basically done adhoc (and sucks), but no one cares.

    Much of the problem is the culture, which seems to reward spending more time and money on a project, rather than getting it done quickly and effectively. We let customers run the process, and the PM will allow the customer to make whatever changes they want, regardless of the impact on the schedule/budget, then basically blame everyone else when the project fails/goes over budget.

    Technical people as PMs are actually no better: they tend to see the inefficiencies, but no one wants to change their methods, so frustration settles in.

    I could easily replace 90% of the project managers in our department with a .forward file. That seems to be their only purpose: forwarding email.

  106. My advice? by Cinnibar+CP · · Score: 2, Interesting

    My advice would be to work on your resume.

    The biggest worry I'd have at a job like that is the incorrect evaluation of my procifiency and progress based on inaccurate or incorrect standards. I don't want to be fired/promoted because of how my apps look, I'd want to be recognized for building solid, stable, functional apps.

    In this situation, you're being judged on purely arbitrary parameters that have little relation to what technology's true business goals should be.

    Another disconcerting problem with this scenario is the likelyhood that they would promote from within to management is rather low, if they do not value technical expertise. You can't expect to make it into a managerial tech position from within further down the road if tech expertise isn't one of the primary prerequisites for attaining that position.

    I'd move on as soon as a bigger and brighter opportunity presented itself if I didn't have a TRUE tech manager.

  107. Middle-man by Darkness+Productions · · Score: 1

    Well, if there's money in the budget, you could always do like we had to do on one of my previous teams. We had the developers talk to the middle-man, and the middle-man spoke with the managers. The middle-man had some programming experience, and some management experience.

    He also knew well enough that a project that needed 6 months to complete couldn't be done in 6 weeks, and he made sure to tell the clients/managers that. He also had to translate coder talk to manager talk, a very impressive feat to say the least.

    After he arrived, the projects went much smoother, and we even let him code once in a while ;)

  108. Project Manager... by helraiz · · Score: 1

    You lucky you have A Project Manager. That's a non-existant position at our company. We are developers, we are project managers.

  109. Project Management is bull by Anonymous Coward · · Score: 0

    As usual, the whole point has been missed here. The current model and theory of project management, obsessively beloved of MBAs, and originating in the early 1900s, mostly from the work of Frederick Taylor has been proved time and time again to be unable to deliver projects. This is a top-down process which concentrates on metrics and inevitably decays into senseless beaurocracy, and obsession with irrelevancies.

    In effect it doesn't matter if your PM is technically savvy or a professional manager (god save me); the theoretic framework they follow is flawed, and the chances of the project succeeding on budget, on time, and to the satisfaction of the end-user are about the same: virtually nil.

    (How many projects have you worked on that have satisfied the above 3 criteria? Er...none, per chance?)

    Upto 35 people died in London recently due to the failure of the new software controlling the ambulances. As the engineering structures whether they be physical or in software get increasingly complex, then we desperately need better form of PM.

    Again this kind of question is not just applicable to IT, but like many of the issues facing us in IT, is applicable to the whole of society).

    Personally I would like to see a lot more research into evolutionary construction methods, or more research into complexity theory, and emergent behaviours and not this continual shoving of a square peg of anally, hierarchical, inflexible, failing methodologies into a round hole.

    But firstly we should wake up to the fact, that the current model is crap.

  110. learn from SAIC by Anonymous Coward · · Score: 0
    SAIC is a company that in many respects is a experiment of the larger IT world. Within its boundries lie a very diversified set of personnel, business models, and management strategy. As a parallel to this, there are many differences in business know-how, competence, ethics and long term comprehension. My experience up until just recently was a group that while very large and impressive from a marketing perspective, is in actuality riddled with incompetence, short sighted decisions, micromanagement and unethical behavior. So I have seen basically some extreme ends of the spectrum. What I learned was this... it doesn't necessarily matter if the project manager does not have 'technical experience' as long as they are willing to learn, willing to listen, willing to adapt and at least have an understanding of the system itself (knowing about cars, handling and driving, as opposed to understanding the actual fuel delivery system, electrical/computer system, etc of the design).

    Of course in my case, the problem was due to a lack of competence, coupled with an egotistical and very selfish attitude. (the stereotypical golfing buddies syndrome) Horrible decisions were made on a regular basis, lies were spread like PB on the other side of the Jelly sandwich, and the upper management did not only allow it to happen, but in the long term it was obvious that such behavior was encouraged.

    This is to say that the technical, or lack thereof, knowledge was NOT the problem. The leader does NOT need to know everything about every part of your systems. Neither does a manager. (PM's are less leaders and more coordinators, even though in many poorly run companies they are paid and treated like emperors).

  111. Signs of a company going downhill... by Uttles · · Score: 2

    Most technological companies these days have project managers that are in fact from a technical background. One of my goals is to be one such project manager possibly, and so I'm taking my computer engineering undergraduate degree off to graduate school so that I can get a masters in business administration. Companies that wish to be successful will hire people with similar backgrounds, whether it be from work experience or education. I don't know what to do about your company, but I know hiring engineering managers who've never attended a math course over the 200 level is bad, bad policy.

    --

    ~ now you know
  112. Much of this has been said.... by groove75 · · Score: 2, Interesting

    Any developer striving for a PM type job needs to read a basic SDLC book, because if you think that your superior programming skills and technical knowledge alone are going to make you a wonderful PM, think again. SDLC is a very extensive and time proven process, and indeed as has been said.. developers tend to lack perspective on certain levels, and work best when given specific guidelines and dates. PM's *should* know much more about the SD life cycle, but developers have a point also... Any good system's analyst needs to have basic programming skills. The argument can go either way. However, I would choose a system's analyst with no programming skills, over a developer with no SDLC experience any day. Just my 2 cents.

  113. My company tried something new by Anonymous Coward · · Score: 0

    They decided that project managers really didn't do anything except give them project schedules that were too long. So my company now has no project managers.

    The tech leads are responsible for all the project management associated with any project as well as the majority of the design and implmentation.

    Weekends, late nights, chaos, fustration, are all common here.

    God, I love my job.

  114. Look are important... by Anonymous Coward · · Score: 0

    You seem like an ordinaery engineer to me, that care about how it works, but not how it looks.

    Remember, its actually how it looks and feels that matters, not how it work. Provided that your customer ofcourse can do what they need with it. Usability/Look is probably the most important. First of all, customers wont buy your software of it looks bad, or just damn hard to use, _how_ things works matter jacks to them as long as it actually works.
    I've learned that the hard way, you will probably do that to if you only care about how well engineered the piece is, but forget about look/feel/usability.

  115. What we had to do... by C_Mattie · · Score: 3, Insightful

    It seems like this is a common theme in this industry as I am sure anyone who has been in it for a length of time will tell. I am in almost in the exact situation, as a Senior Developer answering to managers (and in many instances a VP) with a limited technical background in web technologies.

    One could go further to say our managers "know enough to be dangerous", often claiming they are "technically minded" and feel they inherit the skills of the team they manage, often changing specifications or routinely trying to influence technical decisions.

    So what do you do? Here is a bit of what we have done to make things better:

    Understand that you have been hired to do a job because you are qualified to perform the task. I don't want to sound like a motivational speaker, but you need to be confident in the ability to do your job as an expert. Any influences you try and make to a superior will not be taken seriously if you don't take yourself seriously. And don't be afraid to say "Let me do my job. I am the expert here."

    Next, do the research. Don't walk in and say something like "We need to test our code." That is a given (or should be). Walk into an office with a formalized test procedure printed out in your hand and say "We need to do THIS." Also, try and site specific project management guidelines they are not following. Speak their speak. If you want to argue that a PM is not doing their job, make sure you know what that job is and how they are not performing it.

    That having been said, if all else fails I will quote one of my colleagues: "Be a cock." If you are trying to influence a project manager in accepting what is an industry standard practice, be it formalized requirements definitions, change request processes, staging areas, federated databases or whatever, sometimes you need to "step up" and push the changes through. But remember there is a difference between being a cock and being an asshole. You don't have to be afraid to argue (or fight) with your boss for the betterment of the project, just make sure you can back up your point. "Why are you fighting me on this when the entire industry acknowledges this at the best practice?"

    Donno if this helps. Hopefully it does.

    --
    "If you're not failing every now and again, it's a sign you're not doing anything very innovative." -- Woody Allen
  116. The solution is a solid project plan by Delgul · · Score: 4, Insightful

    Let me tell you straight off: Your problem is not restricted to software development only. I work in mechanical engineering and it is largely the same.

    What works for me is to always ask for a solid project plan. If all's well, if there is a project budget, there MUST be a project plan somewhere. If there is not, find another place to work! The project plan is your best friend if you want to keep your PM in line.

    A good project plan contains at least:
    - Outline of the project goals
    - Project boundaries (what you will NOT be doing)
    - A project planning with a work breakdown
    - Milestones with deliverables and delivery dates
    - Known risks in the project
    - Backup plans to eliminate the risks
    - A cost estimation

    To use the project plan in your favor do the following (in writing!):

    - For every task that does not seem to fit the goals of the project, ask your PM to explain how this contributes
    - For every task that seems to go beyond the projects' boundaries, ask your PM to explain why this is necessary.
    - For every activity for which the planning seems inadequate or unrealistic, ask your PM the following questions: HOW did he estimate a planning for this activity? Did he actually TALK to the people who must perform this activity? If not, on WHAT did he base his planning? Ask him to replan AFTER talking to the people performing the activities.
    - If you see risks to the project that were not mentioned in the project plan (like not testing and such), mention them (of course with a reasonable explanation) and ask your PM to explicitly mention them in the project plan.
    - Of course, ask him to think of a backup plan for these risks (or deliver it to him yourself).

    Ok, the trick to effectively tighten the leash on your PM is to warn him on paper and then, if he doesn't respond harrass him with your remarks during the review meetings of every milestone! If you have valid points, it will reflect badly on him with the management being there and it will teach him to listen to his techies.

    It may take time and you may need to do this often, but I must still encounter a situation where this doesn't work if you are pigheaded enough.

    Hope this helps,
    Delgul

  117. Being a PM sucks. by Anonymous Coward · · Score: 0

    I was lucky enough to be in a company that was happy to move me from a Tech Lead position to a Project Manager position.

    Surprise #1: I hated being a PM, and I suspect most good engineers would too. What fun is it to nail down requirement details for other people to build, specify milestones for other people to meet, and set deadlines for other people to follow... especially if you're more capable than the people you're managing. As glamorous as "Project Manager" sounds, it just ain't that great of a job.

    Surprise #2: I sucked at it. I found you have to be good at slogging through mundane tasks, and extremely detail-oriented, to succeed at project management. I thought I'd be good at it because I fancied myself good at "seeing the big picture", turns out that was only the first 10% of the job.

    I've long since gone back to being "just" a software engineer and I couldn't be happier. Don't know if that will always be the case, but for now they couldn't "promote" me to PM if they doubled my salary.

  118. Where have I heard this before? by flounder99 · · Score: 1
    Doesn't Scott Adams make a living off of this very subject?

    --

    flounder

    --
    I don't like .spam. in my email address, neither should you
  119. Management is as management does! by dcipher · · Score: 1

    I currently act as our senior programmer and serve the function of project manager when necessary. Unfortunately, management still ask for the impossible to be implemented and worry more about form than function. However, I am in a position to make sure certain things that are really important get done. Same song, just a different tune.

  120. Project management is bullshit anyways... by Pig+Hogger · · Score: 1
    I knew that, but it was brillantly confirmed by a class on computer project management I took 2 years ago.

    The teacher was a moonlighter, having a day job for the political police as a senior project manager. First of all, the class had three times the ordinary number of people, so we wasted three weeks splitting the group in three.

    Then we had to work on our projects in teams of 10 people, which made managing the meetings as much work as doing the project itself.

    Then I was canned, because when you're 38 years old, you just cannot learn by heart a 50 paragraph text like a 18 year old can (and then the teacher said that there was plenty of erroneous information in the text). I was canned despite our group project ending at second place when it was evaluated by the second in command of the political police...

    So, if you like bullshit and nonsense stuff, go for project management.

    (Reposted, account being moderated into oblivion)

  121. *Trust* is Most Important by Mark+Leighton+Fisher · · Score: 1

    Whether a project manager trusts the estimates given by the programming staff, and whether the project manager's management trusts the project manager's estimates, matters more than the technical qualifications of the project manager. If the project manager doesn't trust the programming staff's estimates, then the project manager will feed management what they would like to hear -- that it can be done instantaneously for zero cost. If management doesn't trust the project manager's estimates, then management will ask the project manager for the project to be done instantaneously for zero cost. Companies where either of these conditions exist usually are not good places to work :(.

    --
    "Display some adaptability" -- Doug Shaftoe, _Cryptonomicon_
  122. Have a requirements list at your hand ... by nograz · · Score: 2, Insightful

    Whenever you have a meeting with your PM, have a in one form or another a list of the current project requirements at hand. Whenever he asks for a new feature you show him the list and say something like: "Ok, here we have our current requirements. Which one would you like to put back in favour of the new feature" (politely). From practice I can tell you that this works wonders ...

  123. Been there, done that. by a42 · · Score: 2

    I'm an engineer and recently had the dubious honor of managing a system implementation and integration project. It wasn't a completely positive experience though it did have its rewards.

    My biggest warning to you is to not expect the impossible deadlines and ridiculous requests to magically disappear. You'll just be the one passing them on to the engineers. The only difference will be that they'll know that you know how ridiculous they are.

    --john

  124. How to manage your boss, get more testing time by LinuxParanoid · · Score: 2

    If you just hook the website up so it emails you and your boss whenever someone hits a glitch (database error, whatever) on your website, you'll get a lot more support for adequate testing. I did this inadvertently at one point and believe me, it gets a lot of attention but my bosses definitely appreciate testing more.

    They'll come demanding an explanation and you tell em that to prevent that in the future, it is a common rule of thumb at Microsoft (and they're the best in the industry from your bosses' perspective, right?) that they spend at least one person testing for every person programming. So half the time developing is debugging. (i.e. its not just your incompetence... even the smart people do loads of testing.) Then step back and let management decide what to do.

    If they're stupid at that point, do you really want to be there?

    That said, fixing every bug no matter how big or small is a luxury your company may not have. Stay levelheaded yourself.

    --LP

  125. Project Management by bogtrotter · · Score: 2, Informative

    The IEEE Computer Society publishes "The Software Project Manager's Handbook", by Dwayne Phillips, available at http://www.computer.org/cspress/CATALOG/bp08300.ht m. It's essentially a cookbook on how to run a software project that not only explains in non-academic terms what should be done, but how and why it should be done. It's an excellent guide for developers who want to break into management and for helping inexperienced PMs to not mess things up. We've been using it on the task I manage and life is a lot easier for all of us. I recommend it to everyone in our field.

  126. You're lucky... by icey5000 · · Score: 1

    Where I work, they don't even care if it looks good!

    "Hmm, the interface looks good, but I've god a few changes... it shouldn't take too long... but if you can just change the colorscheme and the layout... You've got a two days 'til we ship, so you should be okay. Oh, and there are some features that need to be added too. I forgot to mention them earlier..."

    And of course, when it has bugs and a kludgy design after the last minute overhaul... "I can see you're having trouble handling your level of responsibility. You need to get organized and get on the ball! Everyone here works pretty hard to get things done and you seem to be the weak point."

  127. Take a Project Management certification course by nvts · · Score: 2, Insightful
    I recently found such a course offered by Villanova university. I talked with a Villanova rep and he indicated the response from companies hiring people going through the course is very positive. The course is completely online and you have like 8 weeks to do it all.

    Taking a course like this would put you ahead of those that have neither the project management background or skills and those with a tech background who want to move into project management but don't have a background in it.

  128. Project manager? What project manager? by EEEthan · · Score: 2

    The company I work for doesn't have a project manager. We have this guy who calls himself one though -- but he doesn't manage anything but his own department, our content production team.

    Our 'managers' -- two twentysomethings who worked at a financial company for a year, so they think they know how to do things professionally -- are the ones that demand the impossible. Or micromanage tech-side solutions so they are inefficient. Or simple don't spec things out, and then add requirements on the last day before a deadline.

    My opinion is that a good project manager, tech knowledge or no, would keep this kind of stuff in check. He or she would have a clear idea of what's really necessary for our product to get off the ground, and listen to the right people. Technical knowledge might help. It might help a lot. But not as much as common sense. And not as much as a clear idea of what the project really needs.

    It sounds like you've been dealing with BAD project managers. The tech stuff might be hurting them, but it's definitely possible to be a decent manager without tech knowledge. Just harder.

  129. IT-Managment sucks!! by alenm · · Score: 1

    The worst scenario is when the managment doesn't know enough about the technology they work with so they miss out on opportunities because the are so short sighted. Typical case is consultant companies that are so tuned into making money so they don't want to improve code reusability because that would give them "less" hours to bill the client. Instead they could improve the product so it can be reused, sell it cheaper, get more clients and cash in later!! That's stupid and shortsighted. Anyway programmers are way fanatical about the things they make. For gods sake: if a client pays for a Lada don't try to make a Ferrari.

  130. Make sure you understand the real role of the PM. by debest · · Score: 2, Insightful

    I am one of those "non-technical" project managers you refer to, and I can assure you that your company is a rare breed: one that does not put a "subject matter expert" at the head of project implementations.

    However, you should know that the role of a project manager does not mean that he/she should be able to personally implement any of the tasks that need to get done. The PM is, above all, an administrator. The PM's responsibility is to formulate the project plan (with the project team's input), monitor the execution of the tasks, control issues/risks/changes/etc., and manage the hand-off of the project deliverables into the business' day-to-day operations.

    Yes, the PM cannot communicate effectively with his/her team unless he/she has at least a clue as to the jobs that each member does. But seriously, a clue is really all the PM needs! Managing a project effectively does not mean being able to step in to give assistance if a project is short-staffed or the deadline is moved up. It means that the PM will *manage* (facilitate more resources if possible, make sure that the project's problems are reported appropriately if not). Ideally, a PM is MORE effective if he/she is not actually doing any of the tasks to completing the project: such tasks tend to be distracting to the (supposedly) primary job of project management. If the project is small, then (again, ideally) the PM should manage more than one project.

    It doesn't sound like the PMs in your company are very effective, but that has nothing to do with being non-techies. ANY PM that dictates unrealistic deliverables or deadlines without buy-in from his/her team is a poor PM, regardless of technical know-how.

    You also say that you want to be a project manager. Are you willing to let go of your desire to jump into the weeds when you see problems? Because if you don't, I can assure you that other things are going to slip your notice. And what if you are the "superman" who can be cheif-of-all-things on a project? I would be nervous if I was your company's management and your project is critical. If you were to leave the company (for any reason, including an accident), there would be an impossible hole to fill.

    A GOOD project manager can effectively manage just about any project, as long as he/she has a clue. This is not to say that you are not a good PM: I'm just saying that project management and technical know-how are mutually exclusive skills.

    Darren Best, PMP

    --
    Look at the tomato! Isn't it sad? He can't dance! Poor tomato!
  131. Project Leadership Team by swillden · · Score: 3, Interesting

    The company I work for has developed what is, in my ~12 years of experience as a software engineer, the best project leadership approach I've seen. I can't give you any recommendations on how to get your management to try something like this, but I still think you'll find it interesting.

    The fundamental notion underlying the approach is that good project managers and good technical people are somewhat different, and that projects go smoothest when everyone does what they're good at. Another key part of the philosophy is that neither type of person is more important to the success of the project than the other. Ya gotta have both, and they both have to be good.

    So, for every project we have a Project Leadership Team, consisting of a Project Manager, a Technical Architect (funny term, but needed to distinguish from the next guy) and a User Interface Architect (the UI Architect is optional on small projects). These three individuals are *peers*, and all major project decisions are made by concensus.

    Each person has a well-defined area of responsibility, and decisions which lie strictly within that area are only made by that person, although important decisions should be shared with the team. The team also succeeds or fails as a team; praise and blame will be apportioned equally.

    The PM is responsible for building and maintaining the project plan, tracking progress, communicating with higher management and the client (we're a consulting organization) and generally for ensuring an on-time, on-budget delivery. The PM has to know how to deal with all of the business issues and has to be an excellent communicator. Some technical background is useful, but not strictly necessary.

    The Techincal Architect is responsible for managing the daily technical tasks of the technical personnel (all other personnel management tasks devolve to the PM), as well as having overall responsibility for the technical work. The TA sets the technical vision, development standards and guidelines and generally ensures the technical quality of the result. This person must be a very capable designer and programmer and good at communicating with technical people. It helps if (s)he can communicate effectively with non-technical people as well.

    The UI Architect is responsible for gathering requirements, defining the UI (often via a series of prototypes, and occasionally with the help of human factors consultants), managing the UI developers and QA team and generally ensuring the result solves the client's problem. This person must be a very capable UI designer and programmer and must be able to communicate well with both technical and businesspeople. In the case of my company, there are a number of very senior UI architects who have PhDs in cognitive and industrial psychology as well as being excellent programmers with deep knowledge of a wide variety of UI toolkits. These guys are seriously hard to find but amazingly helpful.

    To put it in a nutshell: The TA makes sure the project gets built right, the UIA makes sure the right project gets built and the PM makes sure the project gets built.

    The team members quickly realize that their areas of responsibility frequently come into conflict and that compromises are necesary. Sometimes they realize that the project as planned is impossible; if all three are on top of things then this realization comes early, allowing higher management an opportunity to find or negotiate a solution with the client.

    This team structure is not only very effective, it tends to engender a healthy respect between the leadership team members, since each gets a chance to see into the others' worlds. Actually, each is *required* to see into the others' worlds, since that's the only way to resolve the issues that come up.

    On small projects, there is no separate UI team and the UI Architect's responsibilities can be divided between the PM and the TA (who then becomes the "A"). On very large projects, each of the three leaders will have a small staff of assistants and in many cases the project will be broken into subprojects that each have their own leadership team, with a senior leadership team taking overall responsibility.

    An interesting insight that was pointed out to me a few years back is that this leadership team approach is an application of the Model-View-Controller (MVC) structure to project leadership. This and other concepts allow my company to maintain an exceptionally good track record of on-time, on-budget deliveries (don't know the exact number, but well in excess of 90%).

    --
    Note to ACs: I usually delete AC replies without reading them. If you want to talk to me, log in.
  132. Confusion About What a Project Manager Really Does by skepticallyaware · · Score: 1

    I have over 29 years experience working in the electronics industry and as a system developer/implementer. The most recent 10 years were spent as a professional project or program manager on government system acquisitions.

    A project/program manager is hired to control three factors of a project, scope, schedule, and budget. In most projects, the PM that was around for contract negotiations has been canned by upper management along with several of his or her successors before the project is completed. The reason is that no matter how savvy the manager is, contracts are captured by proposal teams based on delivering the cheapest bid based on a proposal promising pie in the sky technology. The promises in many cases can never be fulfilled regardless of how much money or time is sprinkled on the resulting development effort.
    True project schedules capture reality, but they are built by capturing and carefully analyzing all of the tasks and assets required to deliver a product. This includes personnel, materials, time, and monetary resources required for completing those tasks. After all of the info is captured and the critical path through tasks is plotted, a scientific risk assessment must be accomplished to determine the probability of task completion. Usually working with an 80% probability of completion gives a reasonable calendar date for accomplishign a task.
    Unfortunately, contracted milestone dates are usually on paper before this type of assessment is ever accomplished. The result is that virtually all projects/programs are badly over budget, under scoped, or don't have a realistic schedule until the project is almost complete.
    I can't defend dolts that end up in project or program management with no concept of the technology they are delivering. However, I will say that a PM is the buffer zone between marketing and engineering that tries to deliver the goods. Being a PM requires a set of skills that are not the same as those required in a developer. Most developers do not make good project managers because they are too close to the details of a technology. Likewise, most project managers would not be competent to take over for their developers. However, a good PM does have to be savvy enough to know when technology or the laws of physics are being exceeded.

  133. what are you a fucking girl? by Anonymous Coward · · Score: 0

    fucking stand up for yourself. tell your fucking project managers that they don't know shit and they should shut the fuck up.

  134. You think that's bad...? by Azureash · · Score: 0

    Our PM is a former history teacher, with no technical experience whatsoever!

    --
    Look at my karma - I'm bad, just like Michael Jackson!
  135. Project Managers by voseman · · Score: 1

    PMs are over priced middle man monkeys. Personally wouldnt have any desire to be one. That aside rest assured than when your Project managers loose their job, and they will, that they will be unemployed for many months because the rest of the world does require project managers to not have their head in their collective asses during the interviews.

  136. Personality Types by Chacham · · Score: 1

    Going with the MBTI, and Keirsey's viewpoint, I had an ESTP boss, who hired and ESTJ manager, for our group of programmers.

    The programmers consisted of one INFP, one ISTP, one (probably two) INTP, one INTJ, and one other guy that I haven't typed yet. Probably and N though.

    The SP boss loved the SJ manager. As any Artisan loves having a Guardian clean up after him, and Guardians, especially Ts, love disseminating orders from above.

    To us, however, he was not as well liked.

    The INFP, thought him to be an idiot, but got along with him.

    The INTPs worked with him, though one did it so he could shift the blame on him.

    The ISTP liked him, for making order.

    The INTJ got into fights with him in what he saw as idiocy, quick decisions, and uneeded control.

    Overall, he added control to the project, but at a great cost. Productivity slowed because people either fought him, or did *only* what he requested, and nothing more. He was eventually let go with the first round of layoffs that also got rid of IT, and left only the INFP and ISTP.

    The moral of the story, well I don't know. But if this happens again, I will probably give up. If the manager has *any* control, as opposed to just reporting, he *must* be technical, or the project, and possibly the people, are doomed.

  137. Project Management Methodology done by our State by macdaddy · · Score: 2
    I work at a Unv in Kansas. The State has endorsed a Project Management Methodology (PMM) structure and recommends it to all our state agencies. I heard about it at the 2002 CHECK conference a couple weeks ago. The State of KS also has training classes in Topeka that you can pay for. My Unv is bringing a couple of the State's training staff to my Unv in a couple of weeks to give 2 2-day overview courses. If I feel I need to, I may also convince my boss to let me attend the week-long larger course. I've run into a problem where I don't have project management training. While I feel I could easily get the job done, I don't have the experience in managing people or a .5 mil project (the technical stuff is easy; the political and non-tech administrative stuff is new to me). Management has since put someone else in charge of my project. While they too don't have the PMM training, they do have management experience and they don't have anything else to do being new to our dept. If I had PMM training I could much better argue my case.

    The formal project management session at CHECK (sorry, the sessions aren't online yet) did outline the structure for the people involved in a project. The thing I remember most is that the structure that was presented to us (and endorsed by the State) had Project Managers in an organizational role *only*. They didn't make technical decisions. They drove home the process of managing a project. They generated reports for the suits, kept everyone on track with timelines (decided on by the group), documented the process, ran project meetings, and kept things neat and orderly. They didn't make technical decisions. The presentation giver did say that it would be ideal if the Project Manager was someone of a technically minded person so they could write documentation correctly, not give out false information, and would simply understand to a certain degree what all the technical people were saying. That doesn't mean they have to understand the ins and outs of BGP but they should be able to understand enough of what it is after an explanation to get the point across in writing.

    IIRC I also heard one of the other (larger) Unvs say that they are considering highering a full-time Project Manager for their dept. Project management can easily become a full-time job.

    Hopefully your state endorses some sort of PMM. I would try to convince the suits to let your team leaders take a class or two. If nothing else it will help the actual Project Manager out if the majority of the people that person works with understands the PMM process.

  138. Asking the Impossible by Anonymous Coward · · Score: 0

    It is almost impossible to create a rule that all project managers be coders - or not be coders. At one time everyone was inexperienced, and it is true that most of us don't seem to improve much, but the challenge of managing a project of any kind requires strengths, as others here have noted, that don't have prerequisites. Flexibility, the willingness to listen to alternative approaches, to adjust expectations, and to defend the work of the team to management. These are all human qualitites, though rarely seen. Would programming experience be beneficial? In most cases, yes, but not in all. I've seen some sucky managers and some good ones and none of them knew what they were doing - and these weren't software projects.

  139. The Key to Success with a Nonce PM by tbonium · · Score: 1

    I work at a company with a similar situation. We have spent the past couple months, at my insistance, on reworking our process.

    Here is what we've done:

    • PM must know that they are administrative, not a spec-writer.
    • Let the PM B.S. with the client - they may discover some future-intent that was unstated in the initial requirements-cut. It can help you in deciding on an approach/design to the software.
    • Analysts and Devs need to be present whenever a system is discussed (requirements or enhancements)
    • Two people will interpret the same thing differently
    • Mitigate questions, internally then with the clients
    • Project Managers will never estimate a cost, and will accept what they are told. (No marketing-lies)
    • Requirements will never be perfect; aim for 85 percent.
    • Someone is tasked to update and manage the requirements and design, and they need to understand both.
    • The person who wrote the requirements and/or design is not the one to develop the production system. It must be delegated to a peer. If your requirements and/or design are full of holes and assumptions, it will come-out in the handoff.

    Most importantly, use a process that makes sense for both the project and the task. If something is high-risk, consider a spiral-model. If something is complex, use iterations or the (related) Unified Process. From an organizational perspective, you should lay out templates for all of these.

    Find someone that knows something about Software Engineering, not just Computer Science. Programmers know some great stuff but there is much more to acceptable-software than elegant functional code.

  140. How about an actor pretending he's an engineer? by UnhandledException · · Score: 1

    My company has a guy with a Theater degree managing electrical engineers. (Not my group, thank God.) I've never had to deal with him, but we get a steady flow of his underlings walking into our area bitching, "It's like explaining things to my mom!"

  141. Project Managers by Hellraisr · · Score: 1

    Have them read this book:

    Modern Systems Analysis and Design (3rd Edition)

    It seems to me these people don't know the basic system development lifecycle that every decent project manager should know..

  142. You don't get past it. by Mr.+Bundy · · Score: 1

    I worked for a mid-sized (now quite small), fairly notorious .com. The people running the show knew NOTHING about technology (let alone simple macroeconomics), and damn near killed the company.

    So after losting my job thanks to poor business decisions, I find myself subcontracting for a "consulting" company. Current project: build an online accounting webapp for a client whose clients wish to keep track of outstanding invoices and purchase orders online. Simple stuff. Too bad it's taken six months to reach beta. Why? BECAUSE THE PROJECT MANAGER DOESN'T KNOW JACK SCHITT ABOUT TECHNOLOGY.

    My point? Sadly, this seems to be the norm, and I have yet to find a way around it.

  143. PS by Anonymous Coward · · Score: 0

    Now get back to work or I'll keep you here Saturday.

  144. 3 sides of project management by angel'o'sphere · · Score: 2

    If you look at project management then you see three sides of the "coin".

    a) The client relation.
    b) The technical challange.
    c) The administration of man power, tasks and budgets.

    Regardless how good you manage the technical challange, that means how good you "drive the software process", the other two aspects are equal important for success.

    The a) is a typical responsibility for a typical project manager. Discussing with the customer to get inputs what to do and make agreements about when to deliever.
    With c) the project manager basicly tries to accomplish the in a) agreed goals and time lines.

    Without in depth knowledge how a technical project is to be managed, that means how software is crafted or should be crafted this is impossible.

    The only way to lead a software project with out software skills (mainly architecture and software project management, like: milestone planning, release planning, quality assurance, version and configuration control) is to have a very good communication skill and very communicative lead developers.

    If the project manager TRUSTS the estimations of the lead developers and TRUSTS their explanations why certain taks have to be done in a certain order, he still can manage with out to deep technical knowledge.

    In reality a team is rarely build up with high skilled and high communicative people at once.

    So the only true solution is to evolve form a programmer to an architect and from an architect into a project managing role.

    I was for a long time, as long as I had no project scheduling skills, of the opinion that a technical product/technical project can only be managed by in depth knowledge of the involved technologies. Meanwhile I think it works without also, as explained above. But still I did not found a project witch was managed perfectly .... except if the manager was an "old fox" in programming and experianced in architectures AND had enough energy and patience to LEAD youngsters and enough bones to do not step back if upper management wanted BS from the team.

    angel'o'sphere

    --
    Cost free eBook I read (by iBook/Kobo/Amazon/ObookO/Gutenberg etc.): "The Green Odyssey" by Philip Jose Farmer.
  145. I took a great course and read a great book. by israfil_kamana · · Score: 1

    The course was from claremont consulting, out of LA, (though Sun paid for it for a group of us engineer types), and the book was used as a textbook to the class. It's called "Everything an Engineer should know about Project Management". It's not specific to the Software industry, but definately approaches PM in a way that's compatible with software engineers' mindsets.

    Also consider joining the Project Management Institute. They have special interest groups around many professional categories, including Software Engineering.

    --
    i - This sig provided by /dev/random and an infinite number of monkeys at keyboards.
  146. a good project manager has to be technical by e40 · · Score: 2

    It would be very difficult for a non-technical person to be a project manager. How would they, then, mediate technical disputes between technical people? Often, during the course of a project, people come to technical logger heads. Often, the only way to resolve this is by the project manager facilitating a solution. I've done is hundreds of times over the last 10 years.

    A lot of project management is mundane stuff (tracking schedules, informing people of changes, etc), but a lot of it is making informed decisions about what to do. By this, I mean, there are always bumps in the road to getting out any product. If there isn't one person smoothing over the bumps, then the design will drift.

    1. Re:a good project manager has to be technical by Joel+Ironstone · · Score: 1

      There should be a technical lead in every case. Someone who has the penultimate responsibilty for the technical decisions. The project manager interfaces (chirst I hate that word) with him and the rest of the people on the project to assign roles. Buit technical decisions not involving budget or release dates are left to the technical lead.

  147. Reality Check by Anonymous Coward · · Score: 0

    "...how things look rather than how well things actually work..."

    I understand your pain. I do.

    But in your comments you don't once mention the needs of the business you work for -- you are only concerned with "how well things work". Please note: I offer no defense for your being told to "skip testing". That is indefensible. But you must know that technical elegance and the needs of a business do not always meet at the same spot; and project managers sometimes find themselves in the necessary but unfortunate position of matching up the two.

    Programming experience as a PM is helpful (I have it) but if you think it changes anything, you are mistaken. You've still got to make the projects work on time and budget. And if you've worked as a programmer you know that programmers never finish, they just stop.

    This is not meant to be discouraging, just a little view of reality. I will promise you this, though. Programming is a lot more fun!

  148. Project Management is management by MacDude1 · · Score: 2, Insightful

    Aside from the obviousness of the subject line, project managers should be, first and foremost, GOOD managers - in all that entails. That being said, a good manager listens to the experts on his/her team and judicously balances that with the needs of the company. Too many PM's allow themselves to be bullied by one side or the other. Sr. mgmt bullies them into the low-cost (on the front end) solutions; while the tech experts bully them into the best technology they know exists (by saying things like 'we can do it the other way, but my way is the RIGHT way to do it.'). That may not always be an accurate statement.

    My point is that both sr. mgmt and the tech experts have a stake in their point of view. It is the PMs job to make sure the needs of the company are met - fiscally and technologically. There are always trade-offs between expediency and and technology. That is why PMs have to focus the project. How long does this solution need to work? 3 years? 5 years? What is the true budget for this project? Can I spend a bit more on testing? Do those end users really need those screens re-done or are they fine the way they are? Is it reasonable for sr. mgmt to expect this solution will provide X,Y, and Z when we agreed it would only do A,B, and C?

    These are just basic examples, of course. So, to stay officially on-topic, it is important that the PM understand/empathize with the programmers' and designers' work, but not that he/she be an expert in those areas. A PM should be comfortable with all aspects of the project - programming, design, test, build, finance, IT infrastructure, etc. A jack of all trades but master only in diplomacy and management.

    On the flip side, a PM who has a programming background may not end up being a good PM because he/she will always want a hand in the actual programming. This is a grave danger to the project because the PM has to take a strategic view of the situation and not a tactical. The PM cannot afford to be up to their proverbial elbows in programming or testing because then they tend to lose sight of man-hours or other critical elements.

    Now, move PM from a mid-size or large company to a small business and all this goes out the window! There the PM is usually the one performing one of those key functions in addition to overall project responsibility.

    Heh. If this analysis impresses you and you are an employer looking for a PM who thinks this way - give me a call. :-)

    --
    -- Those of you who think you know it all are very annoying to those of us who do.
    1. Re:Project Management is management by Anonymous Coward · · Score: 0

      A good manager has experience. Nothing else, not the right clothes, not the right social connections, not a couple of college classes that require no effort, nothing else will help them.

  149. Maybe they should by Aceticon · · Score: 2

    Programmers should try and have at least a basic view on business issues both inside and outside the company.

    It's quite simple a question of self-defense. No mater how briliant a programmer you are, siting in your corner concentrating solely on programming you will:
    - Get a lousy salary because you don't know other people's salaries or you don't know-how/have-the-courage to get a beter salary.
    - Be overworked because your manager keeps piling things in your plate.
    - Sudenly discovering that you got laid of or your company went bankrupt.
    - Get blamed once again for a project that blew-up (and probably you won't even know about it)

    Need an example?

    Look no further that the pile of once "innocent and happy geeks" that sudenly found themselfs unemployed when their companies went bust with the tech-bubble colapsed (and they didn't even saw it coming)

  150. Project Management != Technical Management by jtedley · · Score: 1
    Project Management is an entry-level position in a lot of shops, and PMs aren't expected to come into it with the prowess of a programmer. What they are expected to do is be the point of communication between the programmers and the business side of development. Given that:

    1)It's not going to be a lot of fun moving from frustrated programmer to PM if you're interested in technical work. are you ready to be the point of communication for a development team, answering phones, writing timelines, etc ? It is a full-time job, and you won't get to do the "cool" stuff any more.

    2)Likewise, PMs exist because programmers don't have time to answer phones and emails all day. A lot of us programmers don't have the skills or desire to be effective communicators anyway.

    3)I suggest trying to make the system work for you. If PM is an entry-level job at your shop, it could be that you know more about industry practices than the PM does (QA testing, version control, builds, what makes a good SOW). If something's missing from your process, explain it in depth and put it in terms that will make sense outside of the IT department. Usually, this means money and time.If you say, "that's impossible" too many times, you may end up looking like the boy who cried wolf.

  151. Germany Wins! (Offtopic) by Dwonis · · Score: 1

    Har!

  152. Try www.pmi.org by bboling · · Score: 1

    I'm the type of person that fixes the key problem whatever it may be. I've learned many new technologies because we were "weak" in those areas. Gradually others learn them and I move on to other problem areas. The situation that you have described, having clueless project managers, unfortunately seems fairly common in this industry.

    I started studying Project Management and found a great resource at http://www.pmi.org. PMI is an international professional organization dedicated to the advancement of Project Management as a profession. I would highly recommend their Project Management Body of Knowledge (PMBOK) and related material from their bookstore.

    I have certified as a PMP and it has greatly helped our organization. PMI has a pretty general focus, but they do have a IS Special Interest Group that you would probably find more helpful.

    HTH.

  153. See "Do I Really Need a Supervisor?" by Parker51 · · Score: 1

    There was a great thread on this subject on Usenet about 5 years ago in the newsgroup comp.software-eng entitled Do I Really Need a Supervisor?. An individual involved in designing and implementing real-time avionics systems came to the conclusion that his middle management were wastes of space doing negative work and that he felt he could probably do the entire project, including scheduling and budgeting, without them.

    The consensus of the followups was that a good manager is one that gets you the resources you need, shields you from the bureaucratic BS from higher-ups and the customers, and allows you get the work done. A bad manager is one that interferes with the work, doesn't defend your side of things to upper management, and/or doesn't know the limits of his expertise. Even worse, a bad manager may only care about personal empire-building, wasting the organization's energy to further his own political agendas. There is also a meaningful distinction between "manager" and "technical leader," and most projects need some of both.

  154. Unfortunately... by Anonymous Coward · · Score: 0

    If you work for a company that fosters bad management, becoming a project manager will simply switch you from being responsible to your current set of bad managers to another set of bad managers.

  155. Advice from my Dad by bill_guts · · Score: 1

    He was a regional manager in a large construction company and he always tells me (one day, maybe, i'll be in a management position) that you never delegate a task to anyone that you can't do yourself. Now i know the tech industry is somewhat different than the construction industry, but i believe the principle still sticks.

    --


  156. a terrible experience by yoric · · Score: 0

    After my junior year of high school my younger brother, one of his friends, and I were given a job putting our small town's factory online(custom home furnishings, would have required databases and loooooong calculations and lots of time). My older sister was given the position of project manager, due to the fact that she was a student at Harvard. I was the only person on the project with any programming experience. The owner of the factory was technologically challenged.

    We suffered from many problems, but the key problem was that neither the factory owner nor my sister had any clue what was possible for us to do, and neither of them would listen to me when I attempted to explain things to them. Often when it seemed like they were listening, it turned out that they had merely nodded and smiled and continued believing what they wanted.

    While I agree that it is important for project managers to have some applicable form of technical knowledge, I think the main problem is convincing upper management of that fact, as seems to be the point of this article. Is it possible to tell upper management that there needs to be someone knowledgeable about this stuff in charge when upper management has no clue themselves?

    --
    Let the universe of discourse be wombats...
  157. Project Managment for Programmers by Anonymous Coward · · Score: 0

    I am a consulting project manager for process and discrete manufacturing. I could not agree with you more. The gulf created unknowledgeable decisions (by management or project management) is always deleterious to the product (and the vision behind the product). It is often a futile battle, from my entreprenrial perspective, to get upper management to understand that it is easier to produce timely results with a better product by working with their employees (programmers, in your case) than having "outsiders" with no understanding pushing a product/project to completion that carries the burden of unforseen costs of warranty and bad feelings from customers plaguing the misbegotten product.

    Good luck with the resolution of this problem, but be warned that project management has its own dark corners of untested and untenable assumptions, and since the ruling elite usually have no comprehension of being experientially relevant to the products/projects they manage, you are likely to come face to face with "holier than thou" attitude amongst your teachers.

    The solution I devised to circumvent the unthinking and unknowing above me was to be dutiful in appearances (attend meetings, create meaningless reports, etc.) and proceed in a manner that I thought best. When producing the final results (end of project/inception of product) I stood back while the supposed managers tried to explain to upper management/sales department/stockholders what this product was, how it worked, etc. and then stepped in and demonstrated how it worked, why this approach was taken, and make appropriately direct comments on how irrelevant the project managers were to the outcome, also offering why their scheme would not work as elegantly and what that meant to the bottom line.

  158. Book: Rapid Software Development by glinden · · Score: 1

    An excellent book for new technical project managers is Steve McConnell's Rapid Development. I'd recommend it highly. Easy read, excellent advice.

  159. Read Rapid Development by emarkp · · Score: 1

    Please, for the love of Pete, read Rapid Development . If you read, understandd and apply that book, you'll be head and shoulders above most project managers.

  160. what we have here... by Anonymous Coward · · Score: 0
    is a failure to communicate. A Project Manager needs to have the following things:
    • an understanding of the customers wants and needs
    • an understanding of a projects lifecycle and sense of scheduling
    • an understanding of risk and mitigation
    • an understanding of what it doesnt know
    • the ability to reconcile the above
    • and the ability to clearly communicate with its team members as well as Senior Managemenr

    A project manager must above all, know what it doenst know and when to ask. A good team member is one who can explain to a manager what the weights and risks of certain paths of action are such that the manager can make an informed decision with the customer AND the bottom line in mind.
  161. Place (chief-) architect directly under CTO by Anonymous Coward · · Score: 0

    Let your architects report to the CTO in stead of the project manager.
    Pre-condition is that the architects must have a good sense of what's going on in the market and be able to prioritize not only on code pureness but also be able to implement pragmatism beneficial for the target market's demands (time for features in stead of perfect code).

    1. Re:Place (chief-) architect directly under CTO by Anonymous Coward · · Score: 0

      (Communication PMArchitects is key)

  162. by reading these posts... by Anonymous Coward · · Score: 0

    it is easy to see who works for companies with a respectable business process and who are just arrogant butts. Im not sure if it speaks more of the company or the person, but I feel it must be indicative of each - to some degree...

    I wonder, if I know the companies everyone worked for, if it would affect my investment strategies.

    hmmmm....

  163. Only solution in this situation... by Neumann · · Score: 1

    ...is to leave the company. Upper management isnt listening to reason, the project managers got hired with "no previous experience of anything" so the hiring practices are suspect, and you are being told to produce crappy software. This is not the place to learn about project management. This is the place to learn where exactly on the wall it hurts the most when you bang your head against it. Find some place that is interested in quality people. (and when you do, let all of us know about it so we can apply there too 8^)

  164. From My Experience ... by e1en0r · · Score: 3, Interesting

    I've been a PHP programmer working under several different project managers depending on the client for about a year now. I should mention that our art dept. does the HTML because it might be relevant later. Some key Project Managers are as follows:

    A - Completely clueless. Asks the same questions over and over again. Gives the design projects (HTML) to programming and the programming projects to design. Has to repeatedly be told what a form action is. Doesn't know a database from a cheese sandwich. Often forwards us URLs that he requested asking what they are instead of clicking on them.

    He's the least knowledgable of them all and the worst to work with for obvious reasons. We're constantly having to tell him what we can and can't do and constantly having to redo things because he doesn't get his point across correctly. I had to bill about 3 hours to a client to put a simple counter on 6 pages because 2 hours were explaining things to him and half an hour was redoing the counter because he gave me incorrect instructions. He's technically useless, unwilling (incapable?) to learn and also an incompetant project manager.

    B - When I first started working with him he was very competant in relaying what the client wanted but wasn't as good with understanding databases and general programming stuff. After working on a major site redesign I explained how databases worked in order for him to provide me with CSV which I could correctly import. It was important he knew the reasons because he had to explain them to the client. I explained a lot of what can and can't be done and by the end of the project he was entering data himself saving me hours of work.

    This guy is a pleasure to work with. He knows enough to be helpful but not enough to be dangerous. He'll ask us how long something takes to do and will accept our answer without questioning it. He'll give us plenty of notice when things are due and listen to our suggestions about due dates. He doesn't always know if something is possible or impossible, but he'll believe us when we tell him we can't do it.

    C - This guy claims he used to be a programmer. He's new, so I have less experience working with him. I just started a new site with him and because he claims to know programming and design he wants to play a big part in all 3 roles. He knows enough to be dangerous and is always asking "why?" and wanting to see my database table structure.

    This guy is a pain in the ass to work with. He seems to know what's possible and impossible, which is important, but unfortunately he doesn't take suggestions because "he's a programmer". He knows enough to be dangerous and his curiosity is time consuming.

    After working with these project managers for a while, this is the conclusion that I've come up with.

    Clueless morons will always be clueless morons.

    Just because someone knows programming, doesn't mean they'll be a good project manager. It depends on the person, of course, but this could actually be a detriment if they insist on sticking their noses into things too much.

    A project manager that you can teach and mold seems to be the most important. If they're competant and willing to learn they'll be the biggest asset. They don't need to understand for loops, but if they listen to you and trust you then you'll do well. The 5 minutes that it takes to quote them a time estimate is not a big deal. The hour it takes to explain to them why that's the case is a big deal.

    Most importantly in my job is the fact that the project managers have to listen us and when they do question us our boss will resolve the situation.

  165. entire site dedicated to your question by poit420 · · Score: 1

    There's a (fairly) new CNET site with an entire section dedicated to developers handling managment responsibilities. One of the featured articles today is Making the transition from developer to manager. Here's the link: Builder.com Manage.

  166. Impossible? by S3VYN · · Score: 1

    In my experience (7 years) as a programmer and now (3 years) as an architect I've come to believe that my job is to NEVER tell a PM or an executive that a project is impossible. My job is to tell the PM or the executive that the project will take X amount of time and will cost X amount of dollars.

    A good way to handle the less technical PM or executive is to talk in language that makes sense to them. If a project is initially termed as "impossible" chances are the better terminology is "unreasonable cost benefit." Anything can be done, inventors have been proving physicists wrong for years.

    Learn Java, learn C++ and learn ExecuSpeak. With that skill set you'll be more likely to make your point with your PM (who has to turn around and make the same point to his boss) than not.

    --
    [_-+ S3VYN +-_]
  167. Profile of a great PM by mjul · · Score: 1, Informative

    Most programmers I know think managemers are clueless PHBs and act accordingly. That's the root cause of most of the project mgmt problems I've seen in the industry.

    However, seeing the PM as someone to fend off all the "noise" of the organisation - meetings, budgets, change requests etc. gives a healthy perspective that is mutually beneficial.

    I've recently worked with a great PM, Anders. He is great at eliminating disctractions.

    Here's what he does:

    - handles all calls from customers etc. This means the developers get a batch of change requests every now and then instead of an unending, uncoordinated mess of interruptions and changes.

    - keeps everyone posted on progress, all the time (and if we're behind schedule, he lets everyone know early and immediately notifies the customer and starts renegotiating the timeline, resources or requirements). The customers respect him even when budgets slip - because they know early, they know why it happens and are able to influence how it is resolved.

    - keeps colleagues from the company interrupting, for example, when the CTO wanted people to go to a demo of a new version of the content management server he stopped it since it was not relevant to current project and everyone on the team saved a few hours of glorified Powerpoint slides with little technical content. He also made sure to go there himself so that if anything relevant came up with the new version he could have the team check up on it.

    - fences off other PMs trying to steal his resources - so, if you work on his project you don't get dragged to irrelevant meetings or to play fireman on someone elses burning project.

    - he keeps you focused. This is a bit of a bitch since most programmers have their pet features but it really speeds up project completion a lot. He will say "focus on this", "cut that feature", "this is good enough" etc. even when you would prefer spending another day gold plating a particular feature. Gradually, however, most people realise the benefit of this approach - even though some people enjoy firefighting working on projects were problems don't grow big is a great experience. And you get to go home from work on time.

    - finally, he handles all the red tape and suits of the organisation. That means - reporting, budgets, meetings, strategies, gantt charts etc. He handles that and let the developers focus on developing.

    Quite easy, really, but it takes a lot of modesty to be a great project manager. I think many PMs have too big of an ego to be really successful - Anders, on the other hand, would always admit when he was clueless and ask experts (developers) for advice as needed.

    How this helps. If you would like to go into PM make sure to read Steve McConnell's classic book, "Rapid Development". It's a gold mine of best practises and cases show how to - and not to - run a project.

    Also, a book like Bill Jensen's "Simplicity" is highly recommended - it is a simple yet valuable treatise on how to make it simple to do the important things.

    Cheers,
    Martin

  168. sometimes a good thing by KGIS · · Score: 1

    Sometimes hjaving project managers without development experience can be a good thing. They tend to look at things from the view of the customer more and don't focus on what the technology can and cannot do.
    It should be up to the the developers to tell the project manager what can and cannot be done with the technology because that is their specialty. Of course, the PM has to listen to what the developers say and the developers have to actually be honest about what the technology can do. I have seen a few projects where the developer said that the technology couldn't do something because they didn't want to do that amount of work and the PM wasn't really listening anyway...who do you think won that argument?

  169. Re:help your PM help you by dubl-u · · Score: 3, Insightful

    You're on to something, for sure.

    The problem the OP describes usually comes down to a lack of communication between the people doing the work and the people ordering it. Building up trust is a great way to get people to listen to you.

    This is also why the various agile methods (XP, Scrum) work well; short-cycle iterative processes force a lot of interaction, and frequent deliveries build confidence on both sides. Allowing features to be reprioritized every iteration gives managers the feeling that they're in full control, which makes them much less likely to demand impossible things.

    But I have seen cases where this won't work. In an organization of sufficient size, the high-ups are so isolated from reality that they can only manage by appearances; the people under them can succeed just by creating the appearance of success. All programmers know that it's easy to create the appearance of success for v1.0 while leaving a steaming pile of turds under the hood that will sabotage any attempts at v1.5. Truly evil managers will take this every time and then move on to a higher position, leaving somebody else holding the bag.

  170. Hmmm, maybe that's why Microsoft is successfull by Anonymous Coward · · Score: 0

    All PMs can write code, all managers are former developers, no cubicles, senior developers all have window offices... ;-)

  171. Same here by FireStorm69 · · Score: 1

    Same thing at my company here.. I am the lead developer, and my boss knows nothing.. He wants to always jump on the newest and latest fads without considering all the technical aspects of a project. Many times it has happened where he quotes a development time of 2 weeks to a client, but because of the scale and complexity of the aplication we're building, that turns into 2 months. Needless to say, clients aren't happy.. There's only 2 techs here, it's a small company, and we are always pulling our hair out because our boss told a client they could get something that just isn't possible.. I would like to know how to get him out of the loop, he needs to stick to just running the company.. Let someone who knows my job sit down with the client and discuss their wants/needs and what is possible or not..

    1. Re:Same here by mysticgoat · · Score: 1

      [the boss] quotes a development time of 2 weeks to a client, but because of the scale and complexity of the aplication we're building, that turns into 2 months. Needless to say, clients aren't happy...

      But they are your clients. You and the other tech aren't sitting around tweaking your configurations while waiting for The Next Paying Contract to come in. If your boss was more realistic in his timeline assessments, would he be putting your company at a competitive disadvantage? Is he actually doing some shrewd Yankee Trader assessments about the prospect's level of plausible fantasy and his toleration for disappointments with slipping deadlines? If your company is getting a reasonable amount of repeat business, maybe your boss is doing a pretty good job in his own field. There are an awful lot of industries where its carnie against carnie, and if your tech work is a part of one of those, then you really do want PT Barnum in your boss' role.

      I think, though, that we've moved away from project management into a sidebar about the interface between technicians and salespeople.

      Ideally, project management would accept input from both sales and technical, and develop a strategy that you might be squeamish about, but that didn't actually cause you to hurl. That might mean be willing to keep your mouth shut about obvious gaps between what is promised and what is realistic-- but if you are in one of the intrinsically dirty businesses, then you should be willing to take some of the tarnish.

  172. Technical projects need tech management by Anonymous Coward · · Score: 0

    When I started as a programmer, I figured a good, reasonably intelligent manager would be able to manage anything, since management skills include knowing when you need to defer to a resident expert, and so on. After participating in various projects under various managers, I revised my opinion that a manager of a tech project would have to be 'tech literate', with a background that included at least a little engineering of some kind.

    Years have passed, and now I've (reluctantly) concluded that software engineering needs to be managed by a software engineer/manager (can't be one and not the other--needs to be both). Ultimately the manager will make the decisions about what valuable elements have to be cut to save time, and what schedules will have to be extended to include important features, and so on. They also have to assess risks about what to try and what might prove to be too difficult. Most importantly they have to listen to their engineering team and decide which intelligent, well informed opinion to listen to when they disagree (and they will...managing engineers == herding cats).

    That takes actual software engineering skill and experience, and actual management skill and experience. Small, obvious projects will succeed without suitable management, but not to the extent they could have, and large ones will run on and on or produce half-assed results. I've seen successes and failures, and I've seen successes turned to failure due to changes in management, and this was the common theme.

    This carries through all the way up to the top (a tech company without tech & management trained leadership at the top level will have serious problems). The CEO doesn't have to be an engineer, but you need an engineer/manager high enough in the hierarchy to be able to say "we have to do this" and make it stick.

    So I would suggest if you're on a tech project without tech management is to polish up your resume and start looking.

  173. And then cut your resources to do it by crovira · · Score: 2

    I toiled for a real-estate/snake-oil salesman who had made a killing in the Calofornia land rush and bought a software firm.

    His total lack of perceptiveness consisted in

    - handing me "The Five Minute Manager," a not-so-fine book that he'd obviously never read,
    - having erraticly scheduled alleged weekly "rah rah" meeting to inspire the troops (we always met afterwards and griped that he was an idiot and the company was doomed, never mind the project,)
    - asking for estimates, which I delivered based on the growing amount of work (he kept adding "fee-tchurs") to be done and the wall of the delivery date which my team and I were hurtling towards,
    - and then he'd cut my small team by putting somebody on another project.

    It was acidosis vs. Tums, headaches vs. Aspirins, desperation vs. alcohol medication.

    I NEVER want to be a middle manager again. Specially not graftin' for an idiot. I'd rather sell shoes or groom dogs, cats and turtles (they have claws that need trimming.)

    --
    MSBPodcast.com The opinions expressed here are my own. If you don't like 'em... Think up your own stuff.
  174. New world order by jkirby · · Score: 1

    Unfortunatly, we like in a new world where there is too much knowledge for the PM to know everything. This is where the term "knowledge worker" comes from; you have knowledge that your boss does not have. This is perfectly OK. Managing is an art that does not require the specifi technical expertise required to get the job done. "If you want the job done right, find the right person to do the job".

    Jamey

    --
    Jamey Kirby
  175. Apples and Oranges by Wee · · Score: 2
    This is an obvious troll, but I'll have a go regardless.

    You can't really compare engineering to PM. They are two completely, vastly different things. One takes years of hard work and dedication and learning in widely disparate areas, while the other takes -- from what I can tell -- good hair, at least a passing knowledge of golf, a subscription to Details magazine, and the ability to "network" without resorting to using CAT5, fibre, or 802.11b.

    Can you hire a PM with no preivous PM experience and expect products/projects to get managed? Maybe, even probably. In fact, the submitter is trying to bail water out of that particular boat so we know it not only happens, but is common. Can you hire a software engineer with no previous experience and expect any software to get written? Not even the slimmest chance in hell.

    Not to put too fine a point on it, but most people could do PM if forced and very few can be programmers. So the converse of the submitter's problem doesn't even begin to hold water. "I'm a senior admin clerk in an aerospace firm where the engineers have no experience making copies and restocking the supply room..."

    It just doesn't work, man.

    -B

    --

    Ash and Hickory, straight-grained and true, make excellent bludgeons, dandy for the cudgeling of vegetarians.

    1. Re:Apples and Oranges by Kope · · Score: 2

      *cough* BULLSHIT *cough*

      Not to notice how dull your fine point is, but, I've spent the 12 years since I've been a software engineer doing kernel programming learning how to be a PM.

      I've attended thousands of hours of seriously difficult training. I've spent as much time studying business texts as I ever did studying programming manuals and CS texts.

      Indeed, my first job as a programmer was obtained walking right out of the army with absolutely no training in anything! I had one course in lisp, and a decent capacity for logic, but no experience or training at all.

      After years of effort I am just now starting to obtain a level of proficiency in project management high enough to be able to manage seriously complex projects.

      Good project management is non-trivial, and is far more difficult than programming. To be a good programmer you have to be a master of two domains - the problem domain and the language domain. To be a good PM you have to be an adept psychologist, be a master of the business domain in which the problem rests, be conversant in the lananguage domain the programmer uses, be able to handle major accounting problems, risk management, quality managment, and a host of other problem areas.

      The reason so many projects do fail in business these days is precisely that you CAN'T just hire some moron with good hair as a PM and succeed.

      Most people can't be good PMs. Being a good PM requires a highly specific set of personality traits, business skills, technical skills, and years or training.

      Truly good PMs are far rarer than truly good programmers.

      I've rarely had a project for any company that didn't have at least one compitent programmer somewhere in the company. Most had more than one. I've seen many companies that don't have a compitent PM, and from their reactions to meeting someone who is, they've never had one before . ..

    2. Re:Apples and Oranges by Wee · · Score: 2
      Not to notice how dull your fine point is, but, I've spent the 12 years since I've been a software engineer doing kernel programming learning how to be a PM.

      And you assume that all PMs share your sense of dedication? Interesting persepective...

      I still maintain that many PMs believe that their role is not to manage but to put out fires. Reaction, not proaction. Remedial instead of prophylactic management. It takes very little actual talent or foresight to jump into the fray as a stubborn blowhard and expect the problems at hand to bend to your will. I'd personally rather work with your style of intelligent planning and not the sheer mule-headed brute force I've seen so often.

      I can't tell you who many times I've seen a nepotistically hired PM try to buffalo their way into a working group. My reaction now is "I wonder how many days until we get to see Golf Dude throw us under the bus so he can CYA..." I'd love to see the numbers for projects that have been mis-managed into the ground because of former frat buddies hiring one another.

      BTW, I agree completely with your post. And while my original point may not have been as sharp as I'd have liked (it certainly may have been a bit too barbed), I can tell you from personal experience that it was not bullshit. I was not describing a perfect world, just the one I live in. In that world, PMs like you are a rarity and the bad PMs almost invariably hang around far longer than the bad programmers.

      -B

      --

      Ash and Hickory, straight-grained and true, make excellent bludgeons, dandy for the cudgeling of vegetarians.

  176. Would you ever hire a chef who couldn't cook? by arabbit · · Score: 1

    Would you ever hire a chef who couldn't cook? A foreman who never built anything? A colonel who never fired a gun?

    1. Re:Would you ever hire a chef who couldn't cook? by Joel+Ironstone · · Score: 1

      No, but I can run a restaurant without knowing how to cook. The chef is the lead cook. The lead programmer is the lead programmer, a projetc manager should neither cook nor program.

  177. How do they do it in other industries? by --daz-- · · Score: 2

    Perhaps it's good to think about this from other perspectives. The building construction industry is a good analogy to software. The people with the money have rediculous demands. Architects and engineers design it and then the project manager has works with them to estimate its cost and time. He has to know the business side, the engineering side, and the construction side.

    Construction is chock full of suprises, delays, and inconveniences just like software development. If you want to be a good software development project manager, take a look at one of those guys and see what skills they have and try to mimic that.

    I'd bet they have experience in business, design, and construction, but mostly in construction.

    I don't think you'll find many people fresh out of college with a business degree go into the project management business without having some practical experience with construction or design.

    However, this is unfortunately the case in software development.

  178. Project management is bullshit anyways... by Pig+Hogger · · Score: 2
    I knew that, but it was brillantly confirmed by a class on computer project management I took 2 years ago.

    The teacher was a moonlighter, having a day job for the political police as a senior project manager. First of all, the class had three times the ordinary number of people, so we wasted three weeks splitting the group in three.

    Then we had to work on our projects in teams of 10 people, which made managing the meetings as much work as doing the project itself.

    Then I was canned, because when you're 38 years old, you just cannot learn by heart a 50 paragraph text like a 18 year old can (and then the teacher said that there was plenty of erroneous information in the text). I was canned despite our group project ending at second place when it was evaluated by the second in command of the political police...

    So, if you like bullshit and nonsense stuff, go for project management.

    (Reposted, account being moderated into oblivion)

  179. The 3 most important things for Project Management by bossvader · · Score: 1
    The 3 most important things for Project Management are:

    Communication! Communication! Communication!

    That's both ways, open, honest, direct, active, check the ego at the door and be thicked skinned.

    A quick look at this thread just re-emphasized that for me.

    I find effective communications lacking on most projects (i.e most people) and it is my responsiblity no matter what role I play (Developer, Architect, P.M, Line Mgr.) to foster it. It's my best tool. Technical acumen is a plus but doesn't do any good if the P.M. is a poor communicator.

  180. Find a need and fix it in your own time by totierne · · Score: 1

    It may mean working in your own time, but having delivered something management needed and did not realise they needed covers up at management level your other blunders, past and future, that your peers are/will be aware of.

    Avoid being on someones project management software if at all possible. Become a trouble shooter, work on high profile special project teams, such as performance improvement. Get another job if necessary.

  181. In My Experience by Etriaph · · Score: 1
    Project managers are best suited for knowing when the project is due, making sure all the milestones are met, and being sure to get you the materials you need on time. Managing that for 35 people with all the data that has to be considered requires little of a technical background.

    However, I think you might need a Product Manager, someone who is a developer who can manage how the product is produced, how the development works, how QA works with the development, etc. A Product/Project Manager rolled into one is great, but seldom found in today's industry in my experience.

    --
    "It's here, but no one wants it." - The Sugar Speaker
  182. The Perfect P.M. ... by bossvader · · Score: 1
    Is technically brilliant but is a moron for taking the position

    Is not wanted, but seems to be a neccessary evil, a least he does the damn status

    Telepathically understands exactly what I do

    Is a great developer but knows I am better

    Withstands searing heat from upper management, and will sacrifice himself for the good of the developers

    Always takes the developers side in an arguement

    And of course always delivers the food on time

    Sorry could help myself....

  183. Idealist by Anonymous Coward · · Score: 0

    You sound like me. "Tell me when to have it done, cause I can't estimate." That isn't his problem.

    Your project manager doens't employ the best programmer in the world. He doesn't employ the worst programmer in the world. He doesn't employ an average programmer. He employs you.

    Even if he knew how long it would take him, that doesn't corolate to how long it will take you. He needs you to develop the skill of guesstimation. You may have a calendar deadline that is out of your control, and then he might give you a deadline, but otherwise he needs your needs in order to manage everything else.

    And if you told him 1 week, because you didn't understand the complexities of how to integrate the DB with the palm when you said 1 week, and he then asks you why you are late, the correct answer isn't that it is hard to impliment. Of course it is hard to impliment, if it wsn't the cutomer would do it themselves. The correct answer is "Because I failed in my guesstimation."

    In other words communication. He will start to learn your weaknesses, and help protect the project from them. Next time you say 1 week, and he knows you haven't dealt with the tech before, he will take it with a grain of salt, and won't arrange for testers until closer to the due date, or whatever.

    My manager automatically doubles my estimates for new stuff, and things tend to flow pretty smoothly. I am geting better, and our trust is getting better. I am learning what things "can't be done" versus "need more time" versus "you need to tell the customer they are wrong, and they probably want this".

    your manager doens't need to know programming in Palm. If he did, you probably wouldn't have a job. He just needs to know you, your strengths, your weaknesses, and how much he can expect to get out of you. And the only way to get there efficiently isn't to try to teach him programming, but answer his question.

    It wasn't what took so long, it was why are you late.

  184. Solution: Project Managment Certification. by larrypatrickmaloney · · Score: 1

    Our development company has just been aquired by a larger company that provides Project Managment and Project Managment certification. Our new company is called PM Solutions, and the president of our company use to be the president of PMI (Project Mangment Institute. PM Solutions has just partnered with Carnegie Mellon University to provide a 'PM Collge Masters Certifitation' process for individuals wishing to master Project managment. To ba good employee, I thought I would peddle the companies wares. You can check it out at: www.pmsolutions.com Cool stuff, I'm signing up for my PM classes as soon as I get done with my current project. Hope this helps. Larry

  185. The military knows what it is doing by Boomer2 · · Score: 1

    I find it ironic that most of the postings here validate the military structure:
    (1) A generalist (PM = officer) to oversee policy, manage the schedule and resources, and buffer the doers from meddling from above.
    (2) A tech expert (programmer = senior enlisted) to manage the tech details and be a tech knowledge source.

    Who'd think the military has had it right all along? Of course, when know-nothing political (i.e. office politics) hacks get put in positions, it all falls apart no matter where you are.

    1. Re:The military knows what it is doing by metachimp · · Score: 1
      That's because the modern field of organizational behavior has its roots in the military. All of our modern concepts about projects and org. theory can trace their roots back to one very important project: The Manhattan Project.

      It was during the Manhattan Project that the first applications of the social sciences were applied to organizations. This was the first topic in my Organizational Behavior class (I'm studying for my MBA)...

      --
      The system has failed you, don't fail yourself. --Billy Bragg
  186. Re:Not Quite not quite by Anonymous Coward · · Score: 0

    For some reason PMs at my company get paid more. They should be fucking smarter.

  187. As someone who's studying to be a Project manager by Anonymous Coward · · Score: 0

    specifically for web projects, this one discussion has taught me more about how I need to shape my choices in classes than anything I've learned in school so far. Thanks.

  188. Proficiency in project management. by rice_burners_suck · · Score: 2

    Project managers must have better technical knowledge of the subject than those implementing the project. This prerequisite is critical to the project's success!

    When it comes to software, folks tend to think the rules are different when compared to other technical jobs. For example, when a bridge is built, no manager would dream of giving the job to someone without a thorough understanding of physics (and more specifically, of bridge-building). But in software, folks tend to think they can hire some geek out of high school and have them implement God's universe within six days.

    Unfortunately, it doesn't work that way. Software is no less complicated or serious a discipline than building bridges. If bridges fail, people can die . Likewise, if software fails, people can die just as well, and billions of dollars in damages can occur. Even if you're only implementing a text editor. (Imagine if a text editor corrupts someone's file when they're configuring a satellite computer or something. This is not a joke.) And infinitely more so if you're implementing an operating system, for crying out loud.

    Contrary to popular misperceptions, software is a serious matter, not some colorful graphics and icons you click on. To manage a software project, you can't just understand project management. You have to understand what happens when both bits of a XOR gate are high, and you must understand this better than the programmers you manage! Even if they program in Visual Basic. To be a good project manager, who can give reasonable estimates (not just to shut up management, but to tell the honest truth about when something can be implemented with reasonable quality), who can deliver something that's actually worth the resources spent in development, you must be so experienced that you have forgotten 99% of what your programmers haven't yet learned, and they better be pretty damn good programmers.

    For software to be truly successful in the coming years of ever-increasing dependency on computers, computer education simply must change. Programmers should become proficient in electronics as a prerequisite to any programming class. Project managers should have been programmers, and damn good ones, for 20 years prior to becoming project managers.

    1. Re:Proficiency in project management. by Cris+E · · Score: 1
      For software to be truly successful in the coming years of ever-increasing dependency on computers, computer education simply must change. Programmers should become proficient in electronics as a prerequisite to any programming class. Project managers should have been programmers, and damn good ones, for 20 years prior to becoming project managers.

      Wow, where to begin...

      To start with that would be the Tech Lead position you're writing about. To be responsible for the technical efforts you should be the best available to make sure decisions are based on good info with a full grasp of options and risks. But to be responsible for the entire project frequently means responsibility for (and a deep knowledge of) complex business rules being implemented or integrated with, or very close personal relationships around the organization to wrangle necessary resources or buy-in, or any number of other aspects of large projects that might be more important. And even when the technical aspects are the most challenging that just means you have to have the best tech guys working on it, not necessarily running the show.

      The only real requirement is that whoever is the PM makes it a priority to maintain frequent and open communications with every group involved. The best PM is only as good as the team doing the work, and if they can't cut the mustard a great technical PM is only going to see it earlier, not do much about it.

  189. You just work for an idiotic company... by Anonymous Coward · · Score: 0

    While it's not necessary for project managers to have technical experience or skills, it is essential for them to *listen* to the developers' needs and pushback. In a properly run company, project managers and developers work as equals to solve a problem. If developers are merely mindless slave labor to project managers' whims, the project (and the company) are destined to fail.

  190. The solution by Anonymous Coward · · Score: 0

    "Has anyone else found the barrier to project management is their technical knowledge. How did you get past it?"

    Yes, that's exactely how things where at my previous job. I found a good solution, I quit my job and found a new one where management actually has some technical know-how and things are much better now :-)

  191. 36" Rack by Anonymous Coward · · Score: 0

    When I was in this situation, she had a nice rack, which was enough to smooze the customers when she extended customer expectations beyond reality. Maybe that there should be some kinda minimal equipment set if the tech knowledge is not there.

  192. PM as "shield" from upper management by King_TJ · · Score: 2

    Wow - lots of interesting comments posted here, and some things to think about.

    I'm starting to come to the conclusion that perhaps the most valuable thing about a project manager is the way they act as the "shield", protecting a group from becoming the direct pawn of an upper-level management person (CEO, VP, or what-have-you).

    I can recall a situation with a previous employer where the software development dept. used to be pretty much directly controlled by the company president. Eventually, some things got restructured, and a person was assigned as a project manager over their department.

    They didn't really like this, because they felt like the guy was technically clueless and just more middle-management wastefulness. (In fact, both of these things were arguably true, to an extent.) The interesting thing, though, is the department started becoming more focused on completing the development tasks that the *users* wanted, vs. only working on the "pet projects" the company president envisioned.

    I've been tempted to get into project management before. (Especially after talking with a few of my buddies who came from tech. backgrounds, and now swear that project management is such a great career move for them. Better pay, more respect, etc.) Honestly, I think it requires a completely different skillset - and it's too bad so many places treat it like a "promotion" from a tech. position. IMHO, there's no reason at all to pay these guys *more* than your tech. workers.

    People with good technical skills should try to continue to work where they can put those skills to the best use. Trying to become a "technical project manager" is only going to make you slowly lose your technical edge, and spend half your time doing things you don't enjoy - like building time-management charts and sitting in boring meetings.

    1. Re:PM as "shield" from upper management by metachimp · · Score: 1
      I'm starting to come to the conclusion that perhaps the most valuable thing about a project manager is the way they act as the "shield", protecting a group from becoming the direct pawn of an upper-level management person (CEO, VP, or what-have-you).


      The president of one of the companies I worked for used to give all PM's a copy of the movie "Memphis Belle", and explain to them that they are now the pilot of a B-29 and their project is analagous to running a bombing raid and getting their plane back in one piece...

      --
      The system has failed you, don't fail yourself. --Billy Bragg
    2. Re:PM as "shield" from upper management by SunGod_SF · · Score: 1

      [quote]
      Trying to become a "technical project manager" is only going to make you slowly lose your technical edge, and spend half your time doing things you don't enjoy - like building time-management charts and sitting in boring meetings.
      [/quote]

      I can't agree more. After managing projects for 11 years, I've watched many engineers try to take on a project management role, most believing they could still code and run the project better than a non-technical manager could. This is NOT to say that I think engineers are incapable of becoming successful PMs - it does happen every day. There is a unique subset of engineers that can handle the transition into a full-on PM role quite successfully.

      However, more often than not in my experience, after several months, many of those same engineers turned PM realized how little time they could spend coding, and how much time they now had to sit in mind-numbing meetings and on conference calls. Needless to say, many of them went back to being Technical Leads, because they missed coding. I can't count how many engineers turned-PM bitch about not being able to code, or how rusty they've become because they never have time to focus on the latest technical developments.

      PMing can be a major pain in the ass, and immensely frustrating. Unless you enjoy that kind of thing, I recommend thinking carefully before becoming a Human Firewall, because that's exactly what you become when you become a PM. :D

      A good non-tech PM knows when to get out of the way and let his team do their job. After all, they have those jobs for a reason. (One would hope.)

  193. Your tech knowledge is not hampering you by wealthychef · · Score: 2, Insightful

    It is not your knowledge of technical matters that is hampering you. It is your LACK of knowledge about topics that your managers value that is hindering your efforts. You obviously don't understand their philosophies and probably come across as having an agenda that is different from theirs. Management includes politics and the ability to compromise and see the other side. Work on those skills and regard your techie skills as just one arrow in your quiver and you'll be better off.

    --
    Currently hooked on AMP
  194. Technical PMs by Nept · · Score: 1

    I'd rather have a PM who knows absolutely nothing technical and instead relies on the lead programmer/solution developer to lead the team. The PM in this case would interface with the client and keep the pressure/politics off the programmers, plus keep everyone on task/make sure everyone behaves.
    I can't think of anything worse than a PM who has a little technical experience because it can get to their heads, and they think they don't need to rely on the decisions of their programmers.

    --
    "Teachers leave us kids alone ..." - Roger Waters, Pink Floyd
    1. Re:Technical PMs by metachimp · · Score: 1
      In fact, that is the role of the project manager. Project managers rely on the Tech lead, or the team as a whole to solve technical problems, create estimates, etc. Project managers do not need to be able to solve any technical problems. Project managers keep things on track, chart progress, adjust schedules, handle non-technical or resource/tool issues, and interface with the project's sponsor.

      If you have a PM who's in there trying to solve technical problems, in there writing code, then you have a role problem, in that they're not being a project manager, but a team member, and there is a conflict there...

      --
      The system has failed you, don't fail yourself. --Billy Bragg
  195. Project Management for Programmers by jjmahone · · Score: 2, Insightful

    You all have valid points about the issues you see, and have experienced. I guess my two cents would speak to project organization, and role definition.

    System Manager/Customer: Their job is to understand what problems or opportunities they want an application or blown out system to address/fix. The groundwork is primarily laid out by the customer utilizing the talents of a business analyst during a survey/discovery phase. They are the customer, therefore they're responsible for participating in the project as much as any other group, from requirements delivery, to testing, etc.

    Project Manager: They're not necessarily a manager. They're job is to serve as an interface to the customer. Get an idea of what it is the customer wants, the timeline for delivery, facilitate Joint Meetings with the customer and the technical team, track resources, and costs associated with the project, determine milestones within a project, project critical path, etc. The role of a project manager is the role of a coordinator/accountant. The project manager should serve as the communication focal between the customer, the technical team, and the management that both sides respond too. A project manager does not have to be a developer, nor should they be making any technical or design decisions of any kind within a project. That's not they're role, because keeping everyone on the same page, monitoring the product development life cycle and calling attention to scheduling and resources issues, and tracking overall project cost should keep them more than busy enough. Project manager's should also be sharp enough to recognize the requireds in a project . . . make sure agreements are made and signed on, as well as indentify product support issues, and generally understand the overall software product development life cycle, and then the support and maintenance life cycle that comes after deployment.

    System Architect/Technical Lead: Their job is to run the development team, schedule all technical activities and administer the work, and provide the overall vision of the product based on requirements that came from the customer. The schedule of activities along with the estimates that have been derived by the system analysts, and developers then goes to the project manager who puts the information into the schedule and works with the the tech lead to mitigate resource constraint risks, and other cost related issues.

    Think of a project team in terms of three arms of the project. System Management/Customer, Project Management, and Technical. The roles of couse can shift, but this is a sound view, and will give you a guy idea of who's supposed to be doing what. Another view is that the customer and the development team are two roads that intersect at the project management intersection.

    I really don't think a project manager should have to know a thing about development as long as all three of the project arms are there. For crying out loud . . . project management is newer as a discipline than software development. Project Management came from the construction industry as a means by which the overall cost of a construction project could be lowered, by closely tracking deliverables and alerting management and the customer when deadlines weren't being met on milestones.

    By the way, I'm a developer.

  196. Are you sure? D&B Sure! by whosit · · Score: 1

    Holy Christ - THIS SOUNDS ALMOST EXACTLY LIKE MY COMPANY!!!!! I can understand managers not having technical backgrounds - but I agree "Project" managers should not (or is it "can not") be managing "Projects" if the project is technical with out some understanding of the technology behind it.

  197. Wrong! by jabber01 · · Score: 2

    Management is the same as programming, at the highest level of abstraction there is. The manager's job is significantly more difficult than that of a programmer because while the programmer usually deals with quantifiable, or at least qualifiable, problems, the manager deals with ambiguous conditions all the time.

    A programmer may run into an uninitialized variable for example. This is an easy fix. The manager runs into uninitialized programmers, and this is considerably more difficult to remedy.

    A programmer knows the capabilities of all the objects he arranges into a piece of software, and he also knows the effciency and parameters of the algorithms that get the job done.

    A manager does not have full insight into the capabilities, attitudes, and personal lives of the resources he uses to build his project. He may outline, dictate and enforce certain policies, practices and processes, but can not be assured 100% that these will not be circumvented at every turn.

    So, while the programmer (such as myself) does their little thing, and when it breaks, reaches for the manual and the debugger; the manager is, at best, dealing with uncertain conditions, on a slippery slope, sans manual, with only conversation and limited metrics to serve as his debugger.

    The average manager is just as qualified to manage as the average programmer is qualified to program. Any time anyone bitches and moans about how lousy and clueless their manager is, they should start fixing things by taking a good, long look in the mirror.

    As a programmer, how effective an object are you? This is not meant to dehumanize - managers don't mean to treat coders as cogs, but they do have to consider that perspective. As one building block of which the project is constructed, do you provide adequate reflection for your manager to make use of your abilities intelligently? Are you doing too much information hiding? Are you a bottleneck in a good process? Are you under-utilized, or over-extended? Should you NOT be reading Slashdot from work?

    --

    The REAL jabber has the user id: 13196
    What you do today will cost you a day of your life

  198. Deadlines: not all or nothing by Tablizer · · Score: 2

    What I try to do, but for unexplained reasons is resisted, is to have management or the PM *rank* the requested features, and then knock them off one at a time.

    That should tend to soften any deadline because there is no "line", per se. You have high-priority features, and lower priority features. It is rare that all of them are show-stoppers. If their is a date line, then you go with the features you have finished at that point, giving enuf time for final testing. (Some of them are integrated, so it is not always this clear-cut, but it helps.)

    New requests will get added as time goes on, and the list will probably change.

    However, some managers seem like they just don't want to commit to priorities. Is it because then they can't blame the developers?

    1. Re:Deadlines: not all or nothing by metachimp · · Score: 1
      All projects can and should (although they rarely are) be broken down into a matrix between Deadline, Features and Resources and the relative flexibility of each. The project's sponsor *must* choose which of those three items is the most flexible, which one is in the middle, and which one is the least flexible. For instance, if the date is absolutely hard and fast, then the other two factors must be more flexible (i.e.: to reach x date, we have to be most flexible about the features, and reasonably flexible about resources)


      This whole debate about whether PM's should be technical is immaterial. Good PM's actually know the fundamentals of project management, which is a discipline in it's own right. If you know your project management, you don't need to be technical to manage a software project. If you don't know your project management, then being technical won't help you at all.


      Let me explain something: If you catch one of your so-called "project managers" using Microsoft Project to create tasks and schedules, without having planned this all out beforehand, then they don't know what they are doing. Tools like MS Project are great for *tracking* a project's progress, but they are not a substitute for group planning. The planning phase of a project involves not only the team responsible for developing the project, but *everyone* who is involved at *any* stage of the project. Projects are planned in rooms with white boards and lots of Post-Its, and this should all be done *before* you even open MS Project or other similar tool. Software projects are planned by teams, not by one person guesstimating what needs to be done and then arbitrarily entering them in to PM software.


      Also, I noticed that someone was comparing software projects to structural engineering projects, and mentioned the technical competency of the PM better be there in terms of knowledge about physics, etc. That's only half the story: structural engineering project managers have to study to become project managers. This is unlike software companies, where project managers are often promoted from the ranks of developers. You would not want the project manager of a bridge to have been just promoted from within the ranks of the construction crews without formal training, yet many software outfits promote people to PM status with no training at all. That's the problem with software project managers (or many of them)...

      --
      The system has failed you, don't fail yourself. --Billy Bragg
  199. Amen by Cris+E · · Score: 1
    The project manager's job is to work out what needs to get built and by when; they need to get all the external dependencies sorted out, ensure the requirements are either known or the person(s) who controls those requirements is available when required, get the money and resources sorted out, and work with a techie on how to get the deliverables built in time.

    On large software projects there are two core issues: determining what needs to be built and then building it. Being technical is very helpful in addressing the second point, but it isn't required or debilitating any more than having an exceptional understanding of the business side when writing requirements. A good tech mgr may know when to challenge developers' answers or estimations but might not have a clue about the soundness of the requirements. Non-tech mgrs from business can create better requirements docs that aren't as likely to change because they understand and anticipate future needs.

    There's no silver bullet single answer: PMs are good or not based on how well they work with others, how well they make use of the resources at their disposal, how little time and money they waste and so on. It isn't because they are or are not technical as much as it is if they are or are not competent. And companies that do not believe in sound project management are only going to succeed in spite of that, not because of it.

  200. The problem with sales people by Skapare · · Score: 2

    The problem with sales people is that in their business, if the project ... err, prospect ... is "impossible", then you didn't tell a big enough lie so go back and tell a bigger lie.

    --
    now we need to go OSS in diesel cars
  201. Impossible is ... by Skapare · · Score: 2

    Impossible is coding 100000 different values into a 16 bit field. That is where "cheap" isn't one of the choices as you have to expand the field ... and that may mean recompiling and maybe even recoding everything else that expected to use just 16 bits.

    Impossibility depends on how you state the problem. If the manager says "use a 16 bit field to code the 100000 values" then it is impossible. Tell them so and they might not believe you (in part because they may have come from a background where they are drilled with concepts like "nothing is impossible if you try hard enough", even though we know that is not true). Tell them 100000 requires at least 17 bits, and that its quicker to just use 32 bits, and then at least they haven't heard the word "impossible".

    If you really do have to tell them it is impossible, maybe if you relate it to something they can understand, they can get the message. "That's like running a one minute mile". "A car can do that". "A car is a 32 bit field".

    --
    now we need to go OSS in diesel cars
  202. You have learned much in one year... by Cris+E · · Score: 1

    If you've only been working for a year and come to these conclusions you're way ahead of half the blow-hards running around here.

  203. Project management by Anonymous Coward · · Score: 0

    Some things that people haven't mentioned...

    A lot of the things mentioned very much depend on what company structure you work in.

    In my company, the people who can make life difficult or easier for the engineers and the project manager are the directors and marketing guys, and the person who runs the technical department. It is the PEOPLE in those types of positions who make the difference - are they strong, realistic, but also with a drive to succeed and deliver for their customers?

    Quite often (or so it appears in /.) many people who work writing software get the sh*t end of the stick. If this is the case from your direct management, and you get the feeling that other higher people in the company don't want to know either, then you have two options: change company, or wait for a change of senior management. It is very difficult for one person to change how things work - attitudes come from the top down. That's whether you are a PM or not. (I've seen the good and the bad)

    Without all these people working AS A TEAM with everyone and being realistic (if tough), then things just fall to bits, good project managers or not.

    Secondly, even with technical project managers you may or may not get people in your exact field. And people who think they know what their engineers should be doing can be just as bad - especially if they are in the same field. Again, it is the people, and their personalities that effect the feeling of good boss/bad boss the most.

    Also, don't underestimate how much work project managering is, and how much further your stress levels go up. The money (if you get any increase) will not compensate you. I thought it was stressful being a senior engineer! And you will probably get a LOT less time to do anything technical.

    However, technical people CAN be good managers. They need to learn how to get things done by others. The good ones (as viewed from above) get things done. The good ones (as viewed from below) get things done - without a stick and in cooperation.

    Project management in particular is a bit of a balancing act, things constantly move (and get added), and keeping it all together requires a cool head and support from *everyone* else - both engineers, other departments and senior management.

    Some opinions - although I haven't got all of the answers.

    Regards,
    Rob
    Development Manager/Project Manager/Snr Software Engineer/Overworked

  204. So True: by Anonymous Coward · · Score: 0

    I have had some great project managers that weren't engineers.

    what we used to do on a new PMs first day was:
    1. sit them down and explain to them in finite detail what we did, and how it worked.
    2. explain to them the problems they would be dealing with, and give them the technical training to understand those problems. They didn't have to become software engineers, but writing a simple web-based email address collection script can teach somebody alot about client-server interactions, security, etc.

    and then, we made sure that time estimation was always done with a (trusted, senior) engineer (and they sure didn't write specs). like this guy said, it was always a matter of negotiation between people who respect eachother to achieve a common goal.

    finally, resource allocation was not handled by project managers. a person's time was owned by a resource manager, and all PMs had to go to that central person to ask for it. so, the moment something changed on your project, you had somebody other than that PM whose responsibility it was to check on whether it was time well spent.

    All that stuff about skipping testing, etc. that's not the PM's fault, but the fault of whoever is in charge of them.

    As for becoming a project manager, being an engineer helps a lot, but make sure you learn from the other project managers, the way you wished that they had learned from you.

  205. Here's what not to do by Black+Jack+Hyde · · Score: 1
    Go back to your tech team after you've just met with upper management and ask the techies why Feature X isn't in the project. Never mind that Feature X hadn't even been brought up until a few minutes prior, and the techies are looking at you like you just stepped out of a mental hospital.

    After all, why should you care? When upper management asked you where Feature X was, you'd never heard of it either. But you weren't about to sacrifice any all-important face in the meeting. You turned on your tech team like the traitor you are and stabbed them in the back. Oh, they'll figure it out when review time comes around, but that's a few months away. And you might have a different job by then, after you've collected your bonus. Just because you're a treacherous little git doesn't mean you don't have some smarts.

    Don't do these things. Be good.

    Jack

  206. Quit now while you can by Anonymous Coward · · Score: 0

    Either the department or the company is headed for a collision with reality, and you can get hurt in one of these. Departments can be eliminated and companies can be bought (usually at fire-sale prices) as a result of this sort of thing. These people are practicing very-short-term management and usually get caought by reality at some point. Try not to be there when the inevitable happens.

  207. Find a new job by cdn-programmer · · Score: 1

    Yup, find a new job. That is correct. Would a physician work for a chief physician who knew no medicine, or an engineer for a chief engineer who knew no engineering?

    It is a recipe for disaster and they will turn on the developers whenever it suits them. Knowing this gives you time to find new shoes so to speak.

    Just learn to say no! "NO" I do not want your job nor your money: "NO", I want to work in a professional shop that appreciates technical people.

    In closing I use to hear this bullshit idea (always from non-technical people) 20+ years ago. Without exception it was a DISASTER that they created.

  208. Can anyone see my posts? by larrypatrickmaloney · · Score: 1

    I just typed up a huge response, and I'm have yet to see any of my posts displayed! :( Long story short, check out our web site, it has great PM info, the #1 Source. http://www.pmsolutions.com Larry

  209. The Wisdom of My Years by CrashVector · · Score: 2, Informative

    I apologize for the length but I have something to say about this topic:

    Well let's see, I've been doing this C++/Oracle/SQl Server thing every day for 11+ years now, sooo:

    First Job: Manager was highly technical. Great gig for me because he let me play and play; I learned alot. After 4 years of bonuses and pats on the back, the job ended in a rapid 3 month assault on my work habits. For example my
    "tardiness" was not an issue for 4 years - then suddenly it was a BIG issue {this from the boss who said "I don't care when you come and go I just need it done"}. Why and how did this happen? Because I refused to hand edit a report to change numbers so they were more like what the customer expected. The hand edit was needed after I discovered a nasty "off by one" bug that caused miscounts of dozens at the territor level, hundreds at the region level, and tens of thousands at the national level. My manager acknowledged the bug, told me to fix it, and then had me rerun the reports --> the reports were hugely different from the previous quarter's reports and so some "fixing" was needed to make the data more like what the customer wanted. The incidental fact that these "numbers" dictated salary and bonuses for a sales force of hundreds mattered not - the customer expected numbers that looked like the previous quarter and that's what they got. Nope, I don't think that the company that hired me out of college exists anymore...

    Second Job: Two highly technical Manager(s) - they fought over me endlessly; it was fun. Why was it fun? It was fun because 1) Those guys both ran interferance - my job was to write tight code, their job was to make sure I had adequate time to do it, 2) They were TECHNICAL. Result: a very stable product that everybody liked {no really it does happen}. In general it was a Fabulous workplace with a really hot receptionist. Then the phone rang for more money...

    Third Job: Maybe you've heard of them --> www.wsj.com. Yepp I helped the Wall Street Journal build their web site. Semi-technical manager whose favorite quote was "the day you see me writing code is the day we're all screwed". Okay workplace, with 2 hot babes in daily view. But there was one problem: my manager - who I did and still do like - had the horrible trait of liking incompetent a$$holes. I had a good run at Dow Jones but I have heard that my ex-manager's career has taken a nose dive --> it's hard to soar with eagles when your goto people are turkeys. The most important thing I learned at Dow Jones was that consultants make twice as much money for doing the same work as I do. Soooo, on a whim, I packed up my beamer and my babe and we moved out to CA where I would become a consultant...

    Contract #1: 4 months to write a multi threaded MFC GUI that worked with .tif images and Oracle databases. Nope, they hadn't fleshed out the design before I arrived; we went from requirements gathering to design to customer sign off to finished GUI in 4 months. Yes I made it, but I almost landed in prison. The problem? A somewhat competent but HUGELY arrogant buttwipe of a PM. This guy's picture is next to the word "hubris" in the dictionary. His favorite thing was unannounced "dog & pony" shows where he would routinely berate people for not showing any progress. This PM also suffered from the trait of liking a$$sholes. His favorite boy was a devout Iranian muslim who drank heavily, fondled women, and lied lied lied. Muslim boy made one mistake though; he tried to get me in trouble with the arrogant PM. You see, muslim boy had written the coding standards document. I was standing in the room when muslim boy told the PM I was not writing code to his standard, to which I replied: "I am writing the code as close to your standard as I can, but my code interfaces with your code and your code is not written to your standard. If you would like to spend a moment I can go print out a sample of your code and we can review it in front of the PM." Muslim boy shut up after that day. But anyway, the PM was an a$$ and he always listened to Muslim boy's advice. As a footnote there was a position open a few weeks ago on dice.com at this company for an MFC Visual Studio v5.0 person who "could fix things". Hubris is a ver bad thing to have when you work in software...

    Contract #2: Signed a 6 month contract and rode the gravy train for 1.5 years before I couldn't take the stupidity anymore. Highlights of the gig were the time that the developers decided that the best database choice would be Object Store, but Marketing over rode developers and so we found ourselves writing an object-relational wrapper on top of SQL Server. The NON TECHNICAL PM didn't know the difference and we were unable to convince him that he should push back on this decision. Then there was the great "transaction controversy" where me with 8 years of databasing experience was over ruled by someone with {I'm not kidding} 3 weeks of database experience. The decision was made that MS transaction server, and transactions in general, would be too expensive and so they would not be used when transferring data across a wireless connection from a hand held to a SQL Server box. I was unable to convince the completely NON technical PM of the seriouseness of this situation. I finally couldn't take it anymore so I left. It has been 1.5+ years since I left and this product is currently installed at 1 user site and they are having "database problems"...

    Contract #3: Best PM I ever worked for. The problem was that a staff of 220+ ADA programmers was making their first attempt at an OOP C++ application. The bigger problem was that project management {way high above PM level} forced an arrogant trash talkin OOP mentor onto the PM {trash talker: one who sounds great to high management but who is otherwise incompetent}. The mentor was supposed to know something about OOP and architecture. The mentor took a combat system which could have been as simple as "ship, sensor, track, doctrine, weapon" and he turned it into an unmitigated disaster of more than 8,000 classes that featured such classes as "TransitionFromStandbyToSafeNotComplete" and "ChecksumCalculator" - the latter being a class with one method --> calculateChecksum. But in every high level meeting that I attended there was my PM, who was quietly sitting in the back of the room rolling his eyes at the sh$t that was excruding from the OOP mentor's mouth. During one particularly bad sh$t storm with many high {I mean real high way above PM} level people in the room the mentor was arguing for the inclusion of another half dozen classes {with one method each} into the project. Well, I had a helluva gin hangover that morning and I wasn't in the mood for a sh$t bath and so I blurted out "yeah, yeah, yeah, and 8,000 classes later you have a system". The mentor didn't know what to do or say so he walked out of the meeting. My PM was beaming from ear to ear. Within 1 month the mentor was gone. Did I mention that my PM was both TECHNICAL and POLITICAL? Best PM I ever worked with and I will be working with him again, hopefully soon, in the future.

    Contract #4: Short term biotech embedded. As I type this I am waiting for a meeting to end so that I can be tasked. I was going to play golf this summer while waiting for the economy to come back and rates to improve. But the phone rang. So I talked to these people. I'm here for 1.5 months. The work is good so far and my PM has had a large hand in writing the code - he's TECHNICAL. This contract will most likely lead to .NET work in the future - and I will most likely want to come back and help out.

    Anyway, sorry about the length but IMHO being technical DOES matter. But the best PM I ever had was both technical and political...

    --Richard

  210. Genu for managing.... by ldumais · · Score: 0
    Why dont just use Genu....

    http://www.gel.ulaval.ca/~dumais01/genu

  211. Project Management Barrier by Anonymous Coward · · Score: 0

    I am surprised to hear you are experiencing a barrier to project management on the basis of technical knowledge. It may be more likely you are being dismissed on the basis of not demonstrating an adequate base knowledge set for this occupation. Having been an IT systems engineer, IT manager, IT Director and IT Senior Project Manager over the years - I feel qualified to state the following: In my opinion, individuals often underestimate the degree of difficulty involved in good project management, and I'm not talking about the challenges of understanding the technical components of whats contained within the project scope. I'm referring to the ability to identify and/or source out project sponsorship, define deliverables, assess and assign the correct resources, lead by consenus versus direct authority, build good and easily understood projects plans, and conduct a meeting and update process that is actually constructive throughout the project. There are a lot of soft "social services" types of skills to make a project close on time. Hence why MBA types are mostly preferred in this role - management usually figures its easier to teach them the technical than the techies the people skills. Anyways, I would highly recommend that anyone still driven to this role start out at http://www.pmi.org . This is "the" certification and education path to good project management.

  212. management? what's that? by Phattypants · · Score: 2, Informative

    In my experience the manager has primarily been a founding partner in the business. He knows his technical stuff because he had respect enough for his developers to learn their language before asking for anything business related to be created. The ony problem has been that technology has moved faster than the managers' ability to grasp new paradigms so they often insist on methods older or less suitable for handling certain tasks. Like snapshots of a competent manager several years ago that did not grow with the times. Not only is it bad for interpersonal cohesion, but more importantly it is bad for business.

    Get tech savvy managers or make it a company policy to have tech savvy managers I say. There has to be a line drawn where internal neoptism (of sorts) comes into the picture.

    Inadequate knowledge is the downfall of the integrity of any service or product.

  213. If you can't pick your PM, educate them! by SunGod_SF · · Score: 1

    The reality is that for any project of substantial size, it's impossible for a single person to manage it. From my experience, it's best to have one person be ultimately responsible for the project, and let them focus on the overall schedule and budget. Then have a Technical Lead (who works for or with the PM) interact with the engineers and translate for them. But don't rule out a PM because they were never an engineer. A successful PM will have a good BS detector and will know when to believe an engineer, and when to question them further. It's a give and take process. But overall, if you can't pick your PM, educate them, don't work against them.

  214. Re:What is WRONG with you Pussy-Ass Americans? by Anonymous Coward · · Score: 0

    its spelled savant, you fucking retard.

  215. Technical people tend to forget.. by Axe · · Score: 1
    ..that how things look is what sells the shit. You may have best architecture that works and sell nothing.

    Provide feedback, do not do the impossible, but be grateful that somebody is watching out about how things look and keep the lid on your runaway creative power and does not impose his personal technical preferences on you.

    P.S. no, I am not a manager. Would not want to - I will be bogged down with my technical preferences and would not pay attention to the sugar on the top. Which customers like.

    --
    <^>_<(ô ô)>_<^>
  216. time to bring that AK to work by Butane+Bob · · Score: 1

    Short of that, it looks like your company is due to go down, oh say about.... (looks at watch) now. If management can't listen to its people and make changes, it needs to be overthrown, ousted, cleaned, deleted, etc. Go to the TOP. If the CTO does not listen to your suggestion, its probably because he knows everything about everything and does not need help from lowly Engineers. The truth is, the only code he has written is rotting on IBM punch cards from his university days. Look for a new JOB. These people are ruining your career.

  217. I've never seen anyone get past it. by ilmarin · · Score: 2, Interesting

    I've seen dozens of projects fail. Only projects with engineers acting as project managers have succeeded. The concept of "management specialists" is fatally flawed, and actually quite insane if you think about it for awhile. Managers have to be able to make decisions based on personal experience and domain knowledge. Traditionally, engineering project managers were very senior managers with advanced degrees. Project management was a field that you would work your way up to after several years as a junior engineer, then senior engineer, then team leader. This is another fad notion being followed with no substantiation or logic, probably as a result of the deficit of qualified project managers during the dotcom boom. It turns out that the projects probably were not all that important, however, so, in the long run (like everything else) I suppose it doesn't really matter.

    But don't think you're going to get it to work.

    If your org is typical, you may actually be being saddled with this "project management" in order to collect productivity metrics. In this notion engineering development is treated as a Production process rather than as a Design process. Engineering, of course, is a Design process, so to manage it you have to look at how engineering design has traditionally been managed -- what has succeeded and what has failed. Production processes are good for managing things like building a tract of houses.

    When I was a kid I spent several years working as a building contractor and a project manager of building construction. For the last 20 years I have been an engineer and recently a manager of software development. They are not at all the same thing and the models should not be confused.

  218. Offer the Alternative by emilami · · Score: 1

    I prefer to give them such an outrageous time estimate that they either give up on the idea or let me do things how I want them so that it will "get done faster". They usually like the end result better than their original idea, anyway. When they want me to do something, impossible I will say that it will take me a while to figure it out but that I will try my best and just write enough code to prove that it won't work. One other thing I do is say that I don't understand and have them explain it in so many different ways that they forget what they were wanting done in the first place and come up with a new idea that is actually possible (things of the sort are not documented where I work).

    --
    http://www.accountkiller.com/removal-requested
  219. My favorite PM was *not* a tech PM by ediron2 · · Score: 2, Interesting

    Just because it was an anomaly of epic proportions, here's my favorite PM's background:

    She was nearing 50, had a degree in Sociology, and had been managing I/T projects for a decade or more. A lot of her projects were cobol and RPG for banks, and we were a Java house. She was remarkably good at PM. She was also seriously not technical.

    Her best moments:
    -- She once doubled a bid to a client based on his being unprepared and an a$$. Her explanation was life was too short and she'd rather not have to deal with him, but if he paid a vicious premium, we were there for him...
    -- She liked to keep status meetings short, group-wide, and effective. Gant charts or checklists of milestone items would get a quick review, we'd respond on change in status since the previous meeting, and we were gone.
    -- She knew she didn't know code. She didn't revel in it, but she would look for an effective analogy on critical issues so she could understand them well enough to do initial communications with clients (to shelter us). If it exceeded her ability, she'd arrange a call/meeting with all three of us, and she'd quietly listen and learn while we worked with the client to find a workable solution. She was willing to learn, in other words, and wasn't intimidated or put off when we would contradict or correct her on technical items.
    -- She *did* know people, project management issues and methodologies, political tricks, and everything else, thanks to her adapting her sociology training over to the topic.
    -- She'd rarely play us politically. If something was hot, we'd get a warning. If it was a lame issue, she'd say it was likely to fade away if ignored.

    Going the other direction, I've seen technical types that were the epitome of the Peter Principle... great techies that had been handed a budget and a project without a lick of training or ability to handle the project. This scares me *more* than a non-tech PM, because they often suck at delegating, politics, shielding the techies from distractions, etc.

    Having started as a design-build engineer on Semiconductor Fabs, I've got to say the software field is pretty full of rank amateurs in Project Management, in general. The people I worked with in construction PM were trained experts and had field experience and an awareness that careful design, scheduling and bidding/estimating were necessary specialties, not off-the-cuff afterthoughts, and that these were necessary costs in any large project. Anything less is like building a house without a blueprint!

    I'd also argue that poor I/T Project Management training is reflected in the poor overall quality of software compared to any other engineering discipline. But that's a whole other can of worms.

  220. One warning flag I've noticed (BAAD PM) by ediron2 · · Score: 1

    I've noticed a subtle character trait that is important here. Some leaders/teachers don't mind being corrected. Let's call them wise. Other people feel it undermines their authority if you prove them wrong or ask them a question they can't answer. Many will punish you politically for showing them up, even if that wasn't your intent. Yup... not wise at all.

    This knack/flaw alone doesn't make someone a good PM, but it sure does make for a crappy one, if the PM isn't a genius at both PM and any tech roles they fill.

    Why wisdom? Well, I was told once that wisdom was learning that you can't know everything.

  221. PM Perspective... by Anonymous Coward · · Score: 0

    The first thing I tell the customer / client as a PM is that although I'm not a geek, I do speek geek. Running interference to allow the programmer to work his/her art is critical. They need to be freed from the morass of a 40 minute hallway meeting with the customer, resulting in my two sentence deliverable to the programmer. And I read /. after work 1:00 F@#$#* in the morning. Why, because it gives me exposure to the "other" side. I've read about 95% of all the messages here, but this one prompted me to write. I think the best definition of the PM programmer relationship is symbiotic. Like the bird that picks meat from the teeth of the aligator. Both need each other. I highly recommend mutual outide activities, shoot pool during lunch, or drink beer after work, whatever,

  222. thinking in a vacuum by Walter+Wart · · Score: 2, Insightful

    Quite a number of people have said, in effect, "Being a manager is being a manager. It has nothing to do with the process being managed." Thus, it is not a problem if software PMs know nothing about the field.

    One wonders what color the sunsets are on the planet this people come from.

    I've worked in several industries other than software - construction, education, medical research, nursing, and nuclear engineering. In all of them a manager had to understand what it was he or she was in charge of. They were generally senior practitioners in the field?

    Why?

    Because you would have to be insane to pick managers any other way.

    Look at what a PM has to do. He has to make schedules and estimate costs. He has to make sure all the members of the team are working efficiently. He has to handle the unexpected, keep the customers happy, manage the supply chain so that the vendors deliver what is needed without robbing the company blind. And so on.

    Unless you have a thorough understanding of the industry you are working in none of this will happen. Estimation will consist of dollar figures and dates pulled out of your butt. You won't have the confidence of the people who are working for you. A crew can deal with a boss who is a competent jerk. But they can't be effective if they know he hasn't got a clue about what he's doing.

    The vendors will deliver crud and demand gold bars for it. Because they know nobody will do anything about it.

    The customers will be unhappy. How else? They've been promised the moon in two weeks. A year later they haven't got anything. In an established industry like construction the liquidated damages would have begun months ago.

    I passed this thread around the office where I work - a medium large construction company. The unanimous response was "How the hell can you make money like that? Are software executives all smoking crack or something?"

    --
    The man who never alters his opinion is like the stagnant water and breeds Reptiles of the Mind -- William Blake
  223. Compromise. by CarrotLord · · Score: 2

    To be a programmer, you need to be able to understand and solve technical problems. To be a project manager, you need to be able to understand resourcing, management and in some sense, sales problems. Project managers are stuck between the techs, who want to do things technically as well as they can, and managers who need to do things cheaply and make the best profit, and sales types who need a project that is sellable.

    You need to compromise your desire for technical perfection to be able to relate to all the concerned parties. You need to see it from their point of view as well as from the tech's point of view. Just like it's sub-optimal having a non-technical project manager (at least, from the tech's point of view), it's also sub-optimal to have a purely techo project manager...

    rr

    --
    Quidquid latine dictum sit, altum videtur.
  224. Depends on the project and the manager by wessman · · Score: 1

    I think a project manager can do a great job despite not having the technical background of his programmers under him/her.

    I've done web programming and website project management, and I would have to say, as a programmer I trust a tech skilled project manager more; and as a project manager, I feel I'm a better manager knowing the basics of what my programmers are working with/on.

    But still, if a project manager is simply a great leader and listens to his programmers' suggestions, then any lack of background skills can be forgotten.

    Like I said, it all depends on the situation and the people involved.

  225. Actually, the main trade-off is scope by PinglePongle · · Score: 1

    We are often faced with immovable deadlines and limited resources; we nearly always end up negotiating about the scope of what we can deliver within those constraints.
    Of course, this is not in a consulting/outsourcing environment - we're an internal team, so our clients are allegedly on the same side (hah). Nevertheless, we agree with the PM what's in scope for the current phase, and what they need to do to increase the scope if they're not happy with that. We can do this because we have a habit of meeting those commitments - sure, we screw up, but never without letting the PM know as soon as we know what the situation is.

    A lot of responses to this thread seem to indicate a lack of trust and respect between the techies and the project managers. I don't care how "technical" the PM is, if that basic trust and respect is lacking, you will never fix the problem. Of course, trust and respect need to be earnt, and sometimes, we techies have to take the first step....

    N

    --
    It's all very well in practice, but it will never work in theory.
  226. Re:Not Quite not quite by Anonymous Coward · · Score: 0

    Maybe they are.

    Brains != Techie knowlege

  227. It's all time and money baby....... by a1z26b2y25 · · Score: 1

    Give me the time or the money and it will get done.

  228. Re:Make sure you understand the real role of the P by Anonymous Coward · · Score: 0

    This is not to say that you are not a good PM: I'm just saying that project management and technical know-how are mutually exclusive skills.

    Actually, you are saying he's not a good PM... that's what "mutually exclusive" means.. that the two items cannot co-exist...

  229. Project Mgmt 4 u by demings101 · · Score: 1

    You pose a good question. Been PM'ing for 12 yrs. And I think tech knowledge IS an asset. And here's why: PM work requires, more than anything else, GREAT COMMUNICATION. Your dev background will actually help you IF you realize that dev knowledge is only a small (but possibly very valuable)component of the job. PM'ing (well done) is basically project COLLABORATION with you as the communication nexus (and planner, and work coordinator and supervisor and advocate for dev and advocate for mgmt/S&M). In other words, you need to have: - Great communication skills - excellent business analysis - reasonable technical analysis skills - intimate knowledge of the SDLC - infinite patience with everyone - balls of iron (because you often have to say no to a variety of folks - nicely, but firmly) - good knowledge of development best practices - how to listen more than talk - basic PM skills (plans, resource mgmt, pm methodologies and best practices) In that context, your dev background is a huge benefit - not an encumbrance. As long as you are willing to leave the developers mindset behind and assume your new mental role: as a support resource for your dev team AND the business players. Now, how many PM's have all that knowledge overall or do their work in a way that serves the dev team well and the business well? Only a small handful that I have ever known. The secret ingredient: you must become an intelligent and attentive facilitator of a huge dialogue which, ideally, includes almost everyone from customer support to sales to exec to dev and QA (and customers, if you have the access. The more you involve the whole team, respect and use whatever input you can AND provide frequent reality checks for everyone, the better the productivity and the better the product. This is why you often work with PM duds: mgmt does not understand project management and therefore often does not know who to hire - so they pick someone with 'pm' on their resume. There is a lot more to (really good) pm than technical or development background, but your dev background is not a liability - it's an asset, as long as you remember it is only a small part of your skillset as a PM. BTW, my background includes: UNIX/Network sys admin, Oracle DBA, Web Dev, Perl/CGI (only a little), a little PL/SQL, shell scripting, business analysis, technical analysis plus I am a hobby programmer, having played in assembler, C, Perl, Java. So I am pretty sympathetic to where you are coming from. don't be discouraged period (no 'but'). Just remember the big picture of great PM'ing is going to use a lot more than your dev skills. Hang in.