The life of a project manager is one of disruptions. As I sit here trying to write this blog post, I've been interrupted by questions from two developers, a relatively small tidal wave of email (it can get much worse), a completed deploy to check in on, a phone call from a client, and several tickets ready for QA. But that's okay. Good, even! That's what we're here for; PMs are the interrupt driven team member on projects and help keep developers focused and efficient, clients in the know, and projects moving forward at maximum warp speed. It just means that most days my timesheet reads like a short novel of quarter hour increments!
With all the moving pieces on a project, there's a lot for a project manager to keep tabs on. Email, Basecamp posts, to-dos, meetings and calls, milestones and timelines, a project budget, developer tickets and task coordination, scheduling project resources, a technical specification, a project plan, and quality assurance are just a start to the tasks for a PM on a single project, not to mention any client specific needs and the intangibles that distinguish a good PM from a great PM. Then there's all the non-client time we spend on internal coordination, planning, and trying to ride the constant wave of email. You'd think we do nothing but work, but Metal Toad strongly promotes healthy work-life balance. Our project managers have mastered the art of being extremely busy while in the office but also maintaining reasonable work hours.
We pride ourselves on our customer service, communication, and delivery on promises. Our clients will attest that we provide extremely rapid response time and quality information to clients. As mentioned above, we manage to do so without working 80 hour weeks (or even 60 hour weeks, for that matter). We also maintain a lean staff and our project managers are extremely efficient, resulting in the ability to manage a large number of clients and projects. So how do we assign our PMs lots of projects but maintain our high level of customer service while not managing to overload ourselves and burn out in a hurry? Enter our capacity planning model and calculating project velocity! It sounds complex, but this is one of many areas where we've found that simpler is better.
Our capacity planning starts with keeping accurate historical timesheet data to review. By looking at the time project managers spent on projects in a given week, we determined that our project managers max out around 18-24 hours per week of billable time on client projects given the other non-billable expectations we set for the position. With that goal in mind, we know what to target when assigning projects to PMs to hit full project capacity. But all projects are not created equal!
Some projects are huge, while others are small. Some are fast sprints to the finish, while others last months or even years. Size and speed independently don't give an accurate sense of the time required on a project. That's why we use project velocity to figure out how "big" a project is. Project velocity is simply the ratio of project scope (budgeted hours) to project timeline. To calculate project velocity in hours per week, we use the following figures from signed project proposals based on historical data for PM time spent on project budgets and how the time was allocated:
Using the target of 18-24 project hours per week and the above method for calculating project velocity, we have everything we need to figure out a project manager's capacity and ability to take on additional projects. But wait, there's one more factor!
Projects with different velocities can have drastically varied project ebb and flow. Assigning a project manager only high velocity projects or only low velocity projects would often result in conflict between projects. Instead, we've found the ideal scenario is assigning a project manager a healthy balance of high velocity to low velocity projects. We categorize project velocities as such:
Given these categories, we generally like to assign our PMs 1-2 dedicated/high velocity projects, 2-3 medium velocity projects, and 4-5 low velocity projects. That means that in an ideal scenario, each of our project managers is assigned 7-10 simultaneous projects, is billable on client projects 18-24 hours per week, and has a healthy balance of project velocities! We've found that's a good mix to ensure we're extremely efficient and lean with our staffing while still maintaining an extremely high level of service.
With all of our capacity metrics in place, each time a new project comes in, the project managers reevaluate their project velocities and overall project loads. There's always the factors of "Oh! Oh! Please give me the project!" and "Yikes, I'll pass" when it comes to assigning a project, but barring occasionally arm wrestling for projects or playing a game of project hot potato, it's usually pretty obvious which PM is the best choice to take on a new project based on their overall project load and anticipated project start and end dates.
So that's how we allocate projects to our project managers and walk the fine line between maximum efficiency and pure insanity for a project manager. Your milage may vary! How does your team manage project capacity?