Dear Monks
I am pondering a question. What type of experience to the management about a programmer is consider reasonable? Different circumstances demands different experience.

Some factors for consideration

.........
aritst

Replies are listed 'Best First'.
Re: Experience to the Management
by dws (Chancellor) on Feb 26, 2003 at 05:38 UTC
    What type of experience to the management about a programmer is consider reasonable?

    Having been a manager several times, including managing managers, I can answer this with some authority:

    It depends.
    It depends on the manager, and it depends on the situation.

    Managers aren't all clones of the same blob of primordial ooze. They have different personalities, experiences, and expectations. Based on individual experience, one manager may value programming ability over domain knowledge. Another might value communication. Yet another might avoid creative programmers like the plague.

    Different situations call for different types of programmers. The type of programmer needed for an exploratory effort to produce a new consumer device is going to be different from the type needed for an embedded realtime effort on a device that could potentially harm people if it were to malfunction. Some projects demand lots of creativity, some require none. Most require good communication.

    There is no one answer to your question.

    If you're looking for advice on what skills to develop, or where to focus yourself, I would suggest a skill that I've found missing in many programmers: learn to listen, and to ask clarifying questions. Far too many of the people I've work with have had an "itchy trigger finger" when it comes to cutting code. But if you don't listen and clarify, you risk solving the wrong problem.

Re: Experience to the Management
by FoxtrotUniform (Prior) on Feb 26, 2003 at 10:14 UTC

    I have never been a manager. That said, I have observed managers, and I have a fair idea of what bits I really appreciated, and what bits I didn't. This is coming from a programmer's perspective, so take it with a pillar of salt.

    I like managers who:

    • Shield programmers from the rigours of negotiating their own budget, staffing allotment, or equipment slice. Managers are there to make sure that we get what, in the context of what the company's trying to do, we need. If I need three more programmers to finish this project in six months, but my project isn't as important as someone else's, I expect my manager to figure that out (in concert with their managers) and let me know. That's most of what I really appreciate out of managers: they make the hard business decisions for me.
    • Figure out the basic business requirements of the project at hand. It's really frustrating for me, a code monkey, to try to figure out what's best for the company in the terms of the problem I'm hacking on. I can do a damn good job with the tools I'm given, but if I don't know what to optimise and what to deprecate, I'm screwed. I know how to solve technical problems, but in general, I don't know how to solve business problems unless I have a lot of experience with my company. If I don't, it's my manager's job to make sure that I solve the right problems.
    • Give me the support I need to get the job done. Whether it's another database, another server, or another programmer, it's usually best for my manager to find me the resources I need to get the job done. I could spend days arguing with the DBA about the best way to implement this billing system: if my manager says "this is the way we'll do it", even if it's not the way I'd choose, we're probably going to save at least half a day on that facet of the program, because he's going to tell the DBA "thou shalt".

    In general, I'd say that managers are in place to streamline and accelerate their subordinates' tasks. If they can't do that, they aren't sufficiently experienced or trained.

    At my last job, I had a very good manager in this respect. About the only thing I'd have hoped for him to do that he didn't was run more interference for me against the upper echelons, but he may well have had his reasons. It was admittedly pretty cool to work for someone who'd say "We really need that board? Okay, I'll send them a cheque for twenty thousand and get it to you by the end of the week", and deliver.

    --
    F o x t r o t U n i f o r m
    Found a typo in this node? /msg me
    The hell with paco, vote for Erudil!

Re: Experience to the Management
by Popcorn Dave (Abbot) on Feb 26, 2003 at 05:34 UTC
    I think you're correct in your assumption that circumstances are going to vary and so will the specifications that a potential employer is going to look for. I don't know that you can ever define an order that every employer is going to follow.

    Case in point: I have a friend that just left a job with a large database company in the Bay Area and applied for a writing position at e-Bay. He was one of two candidates being considered, but wasn't chosen only because the other candidate had actual experience in the area they were hiring for. It's not to say that both weren't qualified to do the job, the other person just had hands on experience with what they wanted.

    There is no emoticon for what I'm feeling now.

Re: Experience to the Management
by Heidegger (Hermit) on Feb 26, 2003 at 06:08 UTC
    If I was a project manager, I would avoid such programmers who do non-structured code (long methods, no objects). It is interesting to note that such programmres often solve the problem quickly and know technical documentation very well. However, what is left after them, it is hardly usable by others. How should a manager check this ability, I have no idea. One can notice this after a month or so. This might be personal opinion, but at the moment I'm mostly refactoring code left by some programmer before me.

      IMHO, managers shouldn't operate at that level, unless they absolutely have to (which probably means that the programmers are too inexperienced to work it out themselves). Managers are there to make sure that you get the resources you need -- the cash to buy usable servers and workstations, the time to learn a new toolset before delivering it to the customers, the extra manpower to get a job done in the scope that it requires -- without making you go to their management and beg for money, time, or programmers.

      I think that a good manager spends half their time doing what they can to make your life easier, and half their time making you make your clients' lives easier. And as much as we like to bitch about them, good managers really deserve a hell of a lot of respect.

      --
      F o x t r o t U n i f o r m
      Found a typo in this node? /msg me
      The hell with paco, vote for Erudil!