Discussion Locked

Multiple roles: Developer = Technical Writer = Analyst = Project Manager..?

0 helpful
8 replies
Closed to new repliesThis discussion is closed. It stays readable, but it takes no new replies.

I think we can all agree that a software development project involves many different tasks: gathering user requirements, requirement analysis, design, coding, documentation, etc. And that it's quite normal for one person in a project team to handle a few roles.

But to what extent can we merge these roles on one person? Is it even something we should do? Is it really that beneficial? Or is it actually detrimental to the company?

For me, I don't really have a problem accepting a few multiple roles at one time. Often, it's just due to lack of a budget to hire separate developers, analysts and technical writers. But I do have a problem with being given nearly ALL roles at one single time.

The constant juggling of technical details such as programming; debugging; designing; and documenting COUPLED with the constant juggling of less-technical details such as conducting follow-ups with users, clients, and vendors; thinking of business ideas; writing proposals to other projects ---

Am I the only one who sees something wrong with the scenario above? It just FEELS wrong.

Agree? Disagree?

8 replies

by jellybeenz

As a programmer/analyst that has always worked in small internal 1-2 person IT departments, I can tell you that this is normal in my experience. I've done all of that. I'm given a project by my boss and told to make it happen. Is it an optimal setup? Maybe not for some. But I enjoy the complete control that it affords me as a developer. I've learned to program for the user. Meaning that, unlike some programmers I've known, I deliver something that they can actually use and that makes them more efficient, not less. And it gives the techie a broader range of soft skills that will serve them well in the job market. I would think of it as OJT for your next step up the career ladder.

by jnghh

You mentioned something about an internal 1-2 person IT departments, and that got me thinking.

The last time I was in an internal department, I think the size of most of the projects thrown our way were often small internal applications that support the rest of the organization. Now, being the sole-person in a medium-to-small size project doesn't sound all that bad; reasonable, in fact.

Perhaps the number of roles a single person should play should be dependent on a ratio of team members-project size. If a project size dictates a three-member team, then roles should be dispersed among the three, and so forth.

On the same thread of thought, though, how does one determine that ratio?

by jnghh

As nice as it sounds to have 4 salaries into my own, I'm not sure that having that incentive would push me to working myself as if I were 4 different people. ;)

And, I think management rarely think that way ;)

by stress junkie

As a system administrator that also often provides end
user support for applications I think that having
software development 'under one roof' is optimal. The
more a project is divided between people the more
fragmented the result. Only the software writer has the
in depth knowledge of the software to write good
documentation. The same goes for all of the other
functions mentioned. The price for this approach is the
length of time to complete a project, but the benefit is
having one homogenous vision behind every part of
the project as well as the expertise developed from
each function being applied to the whole project.

by jnghh

"The price for this approach is the
length of time to complete a project.. "

I agree to a certain extent. You're _definitely_ going to have to need more time if you're going to be switching mindsets and tasks throughout the project.

However, I was thinking more of a vertical segmentation of roles rather than a horizontal one.

I've seen fragmentation occur, and yes, I think it's pretty much a case of left-hand not knowing what the right-hand's doing -- but I also think it's more prone to happen when there's more than one person doing nearly the same task: as in two people designing two separate, but integral modules.

However, if one person was in charge of design, and another in charge of actual development (on said design), I see benefits in each person being able to concentrate on the project as a whole yet at a level that's manageable. Also, what about the benefits of having your ideas/visions challenged by another perspective?

That said, however -- I can appreciate the benefits of being the sole person behind a project. At times, having to communicate and argue with counterparts really does feel counterproductive when I could be spending that time just getting the darn thing done!

Sighs, it doesn't seem like there's any one right answer ;)

by reveretts

I have to say from a Business Analyst's perspective (I've been one in varying sized companies for 6 years), it's usually too much for one person to handle. I've also been in a role where I've been the Business Analyst, Project Manager, QA and Tech Support. While I agree that it's good for people to learn more soft skills, stretching resources that thin will always make some deliverable take a back seat and be of lower quality.

I have worked at the 2nd largest tech company in the world, and am now at a software company with a total headcount of 52. Never has there been a case in my experience where a developer has been able to fully understand or document the user's needs, let alone test thoroughly (even the best programmers make mistakes but will rarely think to test everything) or manage the project fully (allocating resources, managing timeframes, etc.).

Talk to upper management and stress the need for an analyst/project leader role. It allows the developers to do what they do best and focus on creating the excellent programs they are capable of producing, and it allows someone to spend their time getting to know the business processes of the organization better so that they can help design systems that work better for the users.

by joab

In Africa it is extremely worse and a dangerous overload on some individual techies. The underlying problem is salary...the employer does not to pay reasonable salary or do not have conducive working environment to attract additional employees who can play specific roles. In most cases the employer does not want to engage more staff to handle appropriate roles due what they call need for extra money to pay. You find an employee is engaged, signs employment contract with clearly spelt out job description. When it comes to real life actual work it is different...one finds him/herself playing multiple roles right from sales presentations to training, documaentation and support. This leads to too much pressure which sometimes compromises quality especially on very large projects. Towards the end one is extremely exhausted, no meaningful rewards or recognitions hence affecting productivity.

Sometimes it arises from the employer engaging people who cannot perform with satisfaction regardless of the support given - hence making 'multi-roled' employee having to do to repeat hard tasks and only leave easy tasks for other colleagues.

Serious danger is that the client also ends up 'knowing' only one person who has been very much involved in the entire project implemetation cycles. In case by some 'miracle' the employee attempts to leaves the employer panicks and tries desperate measure including promises of all sorts heavenly goods if the person will change mind and stick around.

This discussion is closed to new replies.