A lot of the project managers you’ll meet in technical consulting are new. That’s OK! The number of developers - and correspondingly, their project managers - is growing exponentially from year to year. Even if we could assign everyone a mentor with at least a year of experience, there wouldn’t be enough mentors to go around. A lot of people are learning as they go, and land in a role because someone thinks they have an aptitude.
That said, the downside to this explosive growth is that there aren’t always strong norms that show newcomers how highly successful professional technical project management actually looks, in practice. People end up substituting what makes them feel good, or what suits their personality, for what’s actually successful in an evidence-based way.
So here’s a bit of insight in list-icle format for you: 10 things that learner PMs say that make them look like amateurs.
5) “Oh wow, look at your calendar. I can’t work that way, planning every block of time.”
Effective and precise management of a project extends necessarily into precise control of time. A good project manager has a lot of competing demands on their time. “Ad hoc” planning ultimately translates into “whatever fire is most visible for me at the moment.” This is not the same as the most important activities. These people will always find themselves with fires to put out, however, which can make them feel like real heroes!
4) “Whatever the customer says…”
It often feels like the customer should always be right. It is their property you’re building, after all! But a consultant’s job is (usually) not just blindly implementing. The real value is in the consultant’s unique insight: if the customer knew how best to solve the problem, they would have done it themselves! This means that good consulting necessarily involves a certain amount of conflict, or “push back” if you prefer. Blindly doing whatever the customer thinks is not the mark of a professional.
3) “We have to get this done on time, I don’t care what it takes”
No, we don’t. Development is a creative activity; tasks are very hard to estimate accurately. No matter what the customer’s deadline is, even if you set the deadline yourselves, it does not have priority over the reality of how long it takes to build something well. A good PM identifies early when reality will diverge from estimated timelines, and manages the situation by adjusting project scope, team size, or deadlines.
2) “I’ve been working 60 hour weeks…”
Especially in North America, it’s easy for overwork to feel like a virtue. Leaving the cultural aspect aside, the project manager’s job is to control scarce work resources over time. If they can’t manage their own scarce work resources over time (only 40 hours each week!), they certainly can’t manage for a team of other people!
1) “I don’t bother with estimates…” / “How many hours will this take?”
There is an entire (Nobel Prize winning) field of research on best approaches to estimation. To no one’s surprise, estimation in time is one of the least accurate options. So inaccurate, that it appears in some situations to be worse than no estimates at all. Both of these comments indicate a PM who has never run estimates using any of the more effective approaches suggested by research, such as three-part estimation, third party estimation, or abstracted unit estimation. Any of those produce usefully accurate results. My own team’s timelines land within 5% of reality over a 4 month project, and we can predict updates based on changes in scope or architecture weeks or months in advance. We’re not doing anything magical or revolutionary, just some basic math with abstracted estimation units.
I hope this helps some new PMs out there. TL;DR:
- Get control of your schedule. Use some kind of a system to ensure you’re spending your scarce time on the most important tasks, not the most urgent.
- Don’t be afraid to push back on stupid customer requests! The customer is there for your advice. If something won’t work, or is counter-productive, or endangers the timeline, tell them about it. Document that you had the conversation. If the customer still decides to proceed, you can proceed with a clear conscience and likely a better idea of why.
- No one wins from rushed, poor quality development at the end of a project. When it starts to look like you’ll have a timeline crunch, talk to your customer. Help them decide how to adjust the scope, team size, or deadline so the crunch disappears.
- Limit your work time to “just” 40 hours per week. Do not take your laptop home with you, do not open your email after hours. This forces you to be effective with the above.
- Learn about different estimation systems. Go read some articles about how different Agile frameworks do it, and consider the core principles that they all share. Start estimating in some way that’s more accurate than asking people for hours, and track the variance from reality over time. Estimate + variance = accurate, actionable estimates.
The core job of a project manager is to talk with your customer when it looks like you need to adjust scope, deadline, or team size… and to do that as early as possible. If you make some effort towards accurate estimated timelines, constantly compare your timeline to what’s happening in reality, and help your customer adjust scope/team/deadline when the numbers seem off… Congratulations, you are a good project manager.