There is a difference between being the project manager and being the only developer on the project. Note that I did not say the only person on the project. Viewing the developer as the project manager is just asking for disaster (unless that person is the most awesome ultra-with-it developer/designer/PM ever). But even if you had that developer, you’re still in trouble, especially in an academic environment.
Consider a project to develop some GIS extension/toolset to be completed in a year. The group consists of three PIs (tenure-track/tenured/postdoc), a developer, and maybe some students (let’s say masters students). It comes with a built-in hierarchy—tenured > tenure-track > postdoc > masters students > developer (masters students and developers, as technical/professional staff, might be at the same level; it depends on the department and the PIs). The students may or may not be involved in the actual coding; odds are, they are more involved in the data collection and general scutwork. The developer is declared to be the project manager. Let’s also add the stipulation that the developer is also acting in a GIS analyst role, so any GIS data needs would be defined by the developer.
The needs of the toolset are defined by the PIs—it’s their grant. The actual structure and technical details are defined by the developer, who is also acting as the main designer (mostly UX in this case), database admin, tester, and technical writer. The students may have some research needs of their own for the thesis work, but are otherwise there to do what needs to be done.
So that’s the setup. Remember that here we are just talking about the potential pitfalls of declaring the developer as project manager. So how would it go?
Probably not terribly well. You can guess why—three little chieftains who each have a vision of the project, whatever it might be, approaching the developer with changes to the design, changes in the priorities, changes to the underlying purpose of the tool. And, although the student is nominally under the charge of the developer (being the project manager), it’s academia; the students belong to the advisors. So at any time and for any reason, the students can be moved to some other task for some unknown amount of time, regardless of the stated priorities. The plan, particularly the schedule, is completed disregarded. This is more likely to occur when the plan is put together by the developer. It wasn’t the little chieftains’ decisions; it’s not their schedule; it’s just not respected (experience just can’t beat the raw PhD). The PM can’t define roles, can’t assign tasks, can’t keep the project moving forward beyond those pieces they are personally responsible for.
Project management at that point has devolved into the developer’s own time management practices, constant revisions and juggling of the tasks and schedule, and constant stress from never knowing if the students will deliver any of the work that’s required (let alone anything usable; they’re students so that’s hit or miss anyway) and the little niggling worry that the next phone call, knock on the door, or email chime will undo hours, weeks, or even months of work on a whim. And, of course, since this is an academic environment and it’s not uncommon at all to have to work long hours to meet a deadline, there’s nothing wrong with expecting the developer to do that.
I’ve heard this type of situation described as agile programming before. Agile’s all about iteration and change and flexibility, right? To those people not laughing on the floor right now, I say this—no, no, no, no, no. It is not project management. The situation does not improve by misclassifying bad management with the method du jour of the week. Getting something that works, kinda sorta, at the end of the project does not mean that the project goals were reached. And saying things like the developer just doesn’t handle stress well or doesn’t actually know how to manage a project, well, that’s just pathetic. It’s petty and small-minded. And it won’t help the next project or the one after that or the one after that if you can’t or won’t evaluate honestly everyone’s role in the project. Giving someone a title to make it easier to blame them later is just crappy.
So what’s the solution? Well, maybe one of the PIs should take on the role of manager, since they are in fact the project manager. Maybe have regular meetings where the current status of the work is discussed rather than just chucking out tasks at people willy-nilly. Have everyone at the meeting, so there’s no confusion as to what is happening when. And the standard project management spiel with clearly defined goals, clearly defined roles, a process in place to deal with modifications to the plan, etc.
And to the PhD-holding folks—you are doing a great disservice to your students. They will have to go out and manage their own projects. Manage their time between family and teaching and researching. Some management skills certainly wouldn’t hurt. Being able to respect people in other fields with different experiences does not hurt.