|
|
|
|
|
by nstart
1384 days ago
|
|
While this example feels pretty obvious, I think in practice, these conversations conflict with the third caveat mentioned: "Your team is always working on the next most important thing (as prioritised by the business)" When the business functionality and marketing needs compete with technical advances, there's a decent amount of negotiation that needs to be done and that negotiation varies wildly from company to company. Early on in my career I felt angry at these kinds of negotiations. As I've become more mild and open to business needs across the board I realise that most people will agree with the goodness of the idea but it becomes the duty of the proposer to sell it in terms that the business unit can agree to. Overall, this is a great thought provoking article. Concise. Yet nuanced. |
|
I think that this is the crux of the problem, but the solution lies elsewhere rather than just in negotiations.
After all, if you plead for some time to address technical debt and do platform improvements, you might just get told "no" to, given that in certain cultures people won't view these things as something that generates value directly and convincing them otherwise will be an uphill battle.
So why not just announce that X% of the following sprint or month will be spent on these things, to ensure successful continued operations? That's about the same as writing tests instead of having bad coverage due to an ever growing backlog and scope creep which eat up all your time.
After all, you don't ask business about using a version control system, do you? You just go ahead and do what's necessary to version your project. Tests, CI/CD, configuration automation etc. should be treated the same, since we're paid to be engineers and a part of that engineering is ensuring at least decent quality.
Note: this probably doesn't apply to larger efforts, like changing the entire architecture of your application etc.