Most people that climb the software engineer promotional ladder get to the point where they ask:
"Wouldn't it be better just to generate the ideas and hand them off to other people to deliver?"
Often times this question gets asked during the end game (otherwise known as the grind).
Is it better to invent, or is better to deliver? Does the tradeoff of "innovating the fun stuff" trump the "satisfaction of delivery"? Does it have to be "or"? Or is it better to invent and deliver?
I spent the first fourteen years of my software career doing both, and then I left the "delivery" role behind to join a group known as "Advanced Development". This occured after EMC's purchase of Data General Corporation (I was working in DG's CLARiiON organization at the time of the acquisition). After the acquisition cleared there was a six-month "no-transfer" moratorium. When the six months expired I transferred down to Hopkinton to join a team with one rule: if you successfully come up with an idea that is funded for production you are expected to hand it off to some other team to deliver.
Of course, if anyone in the group had an idea that they wanted to pursue and deliver, they were welcome to leave the team!
In both cases I handed it off and let somebody else deliver it. And in both cases I felt like I was missing out. So I left that job and headed back to a true development organization. Why?
Because the camaraderie trumps the grind. I wasn't having lunch with anyone and discussing the latest Dilbert-esque moment that was obstructing our progress. I wasn't sitting in the team meanings having a laugh with the manager about his slick PowerPoint animation (how many hours did that take?). And I was certainly missing out on the part that comes after the grind: the release of the product and the results from the field.
Back to Development, Head Up
So I rejoined a development organization and have stayed in that role ever since.
Having said that, taking on the role of "Invent Not Deliver" had a couple of distinct values:
- I learned what I DIDN'T want to do with my career
- I learned how to keep my head up and continually study new trends and the latest thinking
It's the last item that is particularly important, especially at EMC. The roughly forty companies that EMC has acquired this decade has resulted in a plethora of combinatorial possibilities for innovators. Keeping track of the latest thinking (e.g. private clouds) also sparks new ideas and possibilities.
All of the above puts an innovator in a strong position to deliver new ideas, because someone who invents and delivers can best articulate the path to ultimate productization.
I'd be interested in hearing other people's thoughts on innovation from within or outside of development organizations.