Releasing a product is one of the hardest jobs we have, as creators of software. Developing a product is a potentially never-ending process; there are always new features to be added, bugs to be fixed, and test configurations to validate against. A release date pulls the team together, an often-moving deadline to strive against as an organization. Everybody pulls out all the stops, developers and testers work through nights and weekends, technical writers come out of the woodwork to keep documentation updated, and the leadership team meets daily to ask the question: “Is it done yet?”
The question, of course, is really “is it done enough yet?”.
We finally shipped ProSphere 1.0 at the close of July. I am not surprising anyone when I say that wasn’t the first release date we had in mind, nor am I surprising anyone when I said we shipped with a backlog of items we wished had made it into 1.0. But at some point you need to ship it and move on.
Today I have a slightly different team; a few people have changed responsibilities to allow the teams to better meet the needs of our next release. And while I work to integrate that new team together, I also stew over a laundry list of requirements and enhancements to our product for the next release. Resolving priority conflicts, providing gross estimates, learning new areas of the product, and making sure nothing slips through the cracks — it’s a busy time.
It’s a totally different kind of busy than when trying to release a product — but it’s just as important. The context shift is jarring, but the quality of the work done today will impact our working lives for the coming months, and have a direct impact on the satisfaction of our customers with the next version of this product.
This is, of course, the job we all signed up for. It’s an exciting time.