Hey, I’m starting kind of a big new project as of last week. I’ll fill the background in later, but for purposes of this blog post I’m telling you:
- It’s potentially a big deal in social media;
- The technology is a mix of the banal and the cutting edge; and
- The visionary guy is kind of a kook.
At the moment the technical staff on this thing is a user experience expert who’s only part time, a project manager who is also not supposed to be on this full time, and yours truly. That’s actually fine. We’re still in the visioning and demonstration phase. We haven’t even selected a platform and toolset. What we have is a mission and a timeline for implementing that mission.
Depending on the toolset, this can be really easy or really hard to implement in the next six months. I’m taking a good look at this platform called eVectors, which may come in very handy for the base website and perhaps the Persistent Conversation tool we’re developing.
On one hand
If I can implement all the desired functionality within the eVectors framework, with perhaps a little custom PHP code, six months will feel like plenty of time. In that case, it would be crazy to add “resources” in terms of people to this project. Same goes if we land on a similar high-level tool.
On the other hand
If the framework ends up not taking 80% of the coding off my hands, sure, we’ll probably want more “bodies.” (As an aside, which is worse: “resources” or “bodies” in this context? Geez.) Based on a modern interpretation of Brooks’s Law, we need to do this sooner rather than later. And the Visionary Guy points out that it can take a while to cultivate and recruit a high-end senior developer.
Just In Time
This is where the “Just In Time” concept can be hard to follow. Ideally we’d snap all kinds of resources into this project exactly when they’re needed and cast them off when they’re not needed. By “resources” in this context I mean servers, externally developed software, money, tools, subscriptions, advice… really anything that goes into making this thing work. And most resources are like that. At least in theory you can snap your fingers and get a server in a few days. It’s possible to time this stuff.
Actual people? Not so much. And that’s what Visionary Guy is afraid of. He thinks that if we don’t grab this particular person right now, the opportunity may be lost and we’ll be stuck without him or her.
And it’s true that people aren’t all that fungible. Even though Sarah, Seth, and Sal have pretty similar resumes, they have all kinds of differing strengths and weaknesses. They interact with teams in different ways. They may even have good or bad personal histories with the rest of the crew–not so uncommon in Cleveland’s relatively small-townish I.T. community. So you can’t easily replace one with another. I get it.
I’m telling Visionary Guy dude, slow down. We’re all about keeping this lightweight, agile (as well as Agile), and entrepreneurial. Loading up the team with people you’re not sure you’re gonna need? That’s heavy, clumsy, and corporate. Which reminds me of another Agile concept:
You Ain’t Gonna Need It
Or in this case, “You Ain’t Gonna Need Him/Her.”
As one Agile coach remarked in the context of writing “crystal ball code,”
It is assumed that the “wow, that’s exactly what we needed” outcome is sufficiently unlikely that the costs of the other outcomes dominate.
Likewise, it’s possible that an early hire results in “Wow, that person is exactly who we needed.” But it’s kind of unlikely this early in the process. Much more likely is some highly capable developer waiting around for something to do. Expensively.
The plan goes something like this:
- Evaluate the best available toolsets.
- Align them with our project mission and timeline.
- Do just enough pilot development to calibrate our velocity measurements.
- Then evaluate the need for additional people.
Is it possible that we’ll miss out on the ideal candidate by waiting for a few weeks? Sure. But you don’t win by landing ideal candidates, you win by working with highly qualified people who are right for your project.
So stay tuned. Let’s see how it goes.