Recently the question was asked: “How much access does Pivotal Labs give their clients?”
The most important aspect of working with Pivotal Labs is this: you will be asked to be deeply immersed in nearly every aspect of your own product’s development. Nothing is hidden, everything is transparent, and you are in the driver’s seat.
Product Direction and Tracker Backlog Management
Pivotal Labs asks that our clients provide a Product Owner who can spend 30-40 hours per week with the development team. The client PO is responsible for making product decisions, accepting features and bugfixes, and managing the Pivotal Tracker backlog on a day-over-day and week-over-week basis. The PO doesn’t merely get access to Tracker; the PO is the primary manager of Tracker.
It’s likely that a client PO will need the help of a Pivotal Product Manager or Engineering Anchor to teach them how to write stories and manage a Tracker backlog of stories and milestones. But the PO is the one responsible for prioritizing features, cutting or adding scope when necessary, and determining both what should be built and whether it was built correctly.
When you consider how difficult it is to balance the demands of writing and prioritizing stories, planning milestones, tracking team velocity against possible delivery dates, knowing what scope could be deferred, cut or added as the team learns more about the problem domain (all while removing obstacles from in front of the engineering team and managing your own internal stakeholders), it’s easy to see why this is usually a full-time job.
It should also be obvious why you shouldn’t want to delegate these decisions to anyone else. Pivotal Labs’s most successful projects are those in which the client embraces this responsibility.
Engineering Teams, Transparency and Technical Ownership
If you have developers, Pivotal Labs asks that they pair-program with the Pivots, in Pivotal’s space, for 40 hours per week. Possibly the most important aspect of this co-location is shared ownership of the code that’s being built. Client engineers help choose technologies, make design decisions, and evolve the architecture of the system. Developers rotate onto different feature tracks regularly, and so everyone has some level of context on all parts of the system. As a client, you don’t merely get access to source code repositories; you’ll be making commits to the code.
Co-location has quite a few other notable benefits, not the least of which is that the entire engineering team participates fully in a deeply immersive process that involves: a daily standup; weekly iteration planning meeting; story-writing sessions; and a weekly retrospective meeting that focuses on process improvement. At every opportunity, people are openly and honestly communicating about the status of the project, the business value being delivered, the business priorities, and what the team could be doing to improve.
The team also then participates fully in all of the engineering practices that differentiate Pivotal Labs from other consultancies: test-driven development in which the engineers start build a new feature by writing an automated test that describes the desired behavior; and pair-programming in which two people work on solving one problem at a time. So all day long, developers are talking to each other about technology decisions, problem solving, and what’s impeding progress.
But I don’t have an engineering team!
That’s OK, Pivotal Labs can kick-start development of your product with a team of Pivots.
It’s important to realize, though, that you’ll need to start planning for operating and continuing development of your product after you’ve disengaged from Pivotal. While you’re engaged with Pivotal is a perfect time to involve and train your engineers and your technology leaders. Pivotal consultants are able to transition from “execution” into “enablement” mode, where they’re spending more time educating client developers in technology and process.
You should really think hard about hiring a VP of Engineering (or similar role) early on in order to help build ownership of larger architectural decisions. Can you store your data on a public cloud? Do you want to deploy on Heroku, or build your own devops team? Should you choose the bleeding-edge technology or the older, safer technology? Hiring a senior technologist as soon as possible will help ensure the developers committing code are aligned with the technical vision of your company.
Start hiring now! It will take longer than you think to build a team.
Is Pivotal Labs a Good Fit?
The level of involvement I’ve described above is a challenge for some people. I’ve heard responses like, “My previous development partner made these decisions for me,” or “I’ve got a full-time job running my company, and I don’t have the time to spare.” These are totally rational responses, and everyone’s needs are different.
There’s no judgement being made when I say: if you have a negative response to the description above, Pivotal Labs might not be a great fit for you. Pivotal Labs has seen hundred of clients be successful by working with them in this manner to build a product and build a team; but it’s certainly not the only way to be successful.
With Pivotal Labs, you’ll be in the driver’s seat, steering the product’s development; but you’ll have the obligations that go along with that responsibility as well, which include: spending time, communicating well, staying focused, being consistent, and being capable of responding to new information.
I’ve been a client and employee of Pivotal Labs multiple times because this system works well for me. I want to make the important decisions; and I hold the opinion that it’s critical to have ownership, in the broadest sense possible, of the software. If a client considers themselves to be a software company, anything else would be irresponsible.