Right and Wrong Ways to do development
What’s the best way for developers to support the business?
Building the best possible systems that adhere to the latest and greatest best practices, following the architecture guidelines, unit tested and built right with no technical debt.
That’s the standard we set ourselves, as developers, and yet we end up cobbling together solutions in a rush because the team lead or the head of technology or even the CEO demand we accomplish things in very limited time scales and we have to support the needs of the business.
So we have 2 standards… the one that gets the best tech and keeps the developers happy. One that gives the business what it needs when it needs it.
It seems like we’re always doing the “wrong” thing to give the business what it needs simply because the business want's it now.
Let's examine that, though.
Why is it the wrong thing if it gives the business what it needs when it needs it? Answer: It isn’t wrong at all.
The problem is the view that accepting technical debt is wrong. If the business is choosing to accept that then it’s right, at least in the short term.
Recommended by LinkedIn
We need to move away from the idea of the right and wrong way - because this is a business, not a university lab where we're looking for a first-class honours degree.
What we have are tactical and strategic workflows. Tactical workflows are all about the short term and meeting the immediate business need, often derailing strategic changes.
Tactical work should always be followed up with it’s strategic counterpart - which gives us longevity, testability and what we were calling the “right” solution at the start of this article.
This is a big part of sprinting - we iterate. Our iterations might be as follows…
and each iteration may well be multiple sprints away from it’s predecessor. Each tactical solution must be done with conscious and well deliberated decisions regarding the future strategic end goal.
So now it’s a single standard that keeps the business and the developers equally happy, and we are always doing the right thing.
There is no such thing as "best" practice. There is only practice to your best ability to deliver.