I often divide roles into “do it now” and “do it right”. The typical “do it now” person is the project manager—there to ensure the work gets done by the deadline, unencumbered by consequences of compromises made along the way, as they’ll be off onto their next project by the time those appear. Their “do it right” counterpart is the VP of Engineering or Head of Software Development—focused on the long term well-being of the team and the quality of its work, aware that deadlines will always come and go, but the code stays around forever.
And then there’s the burden of reality, as borne by the designers, testers, developers and other people on the ground. They have to constantly juggle the conflicting demands of these two sides, so as to please everyone today and everyone in the future.
If you always postpone or downgrade “do it right” you’ll end up with a six-, eight- or ten-year old product or service which has never been done right. That puts you in a very vulnerable position—a product that’s difficult to work with, wide open to competitors passing you by—and, all those years later, it will require extraordinary investment to correct.
If you postpone or downgrade “do it now” you’ll end up without a business. Deadlines missed, customers lost.
On the one hand, the trick is to constantly balance “do it now” and “do it right”, because neither one of those will always be the right call.
But the much more valuable goal is to reduce the distance between them. That is, construct a system where “do it now” and “do it right” are the same thing, where there is no conflict. This seems implausible to many, but in fact the concept and practice has been around for decades. Toyota was the original poster child of quality and timeliness, and today Amazon, among others, is regarded as providing excellence in both quality of service and responsiveness.
But how to do this if we didn’t start from that position—as most organisations don’t? We’ll never be able to do it if we only have a short term view, whether that’s until the next deadline or the move onto our next role. But if we take a longer term view then this is entirely possible. In the world of tech we have specific tools that automate delivery with reliability. In real world service businesses and elsewhere we have the broader concept of systems thinking.
Making these kinds of changes is not trivial, which is why it’s important to take the longer term view. But reducing the gap between “do it now” and “do it right” gives us a better working environment, and puts us in a much more competitive position.