Large non-IT enterprises are using software development as their supporting delivery strategy which forms a part of their business, but not for the sole purpose of business. They mostly assign a yearly budget on any project to increase predictability. They tend to keep the expenditure controlled along with a buffer using some validated numbers collected from last financial year. This is a trend adopted from the “manual labour” culture where we can predict expenditure in advance. But it doesn’t work when a work depends on our thought process, experiments and fast fail approaches used in software development we use today.
In manufacturing, budget can be controlled and improved by lean mindset as it becomes predictable. Similarly applying an agile mindset on development works like a charm. Although, the non-IT businesses fail to see the difference between a development line and a production line. This is the biggest impediment which affects many organisations today as it can be completely ignored in many cases.
Yearly budget is the silent killer of innovation and encourages bureaucratic culture in software development.
Many of us have come across this impediment, if we are working in such an industry. We should decouple the budget to be flexible and get support when needed without abusing the freedom. This increases the transparency around the budget expenditure which can be verified after the financial year rather than predicted before a financial year begins. We can never know how a business shapes itself in coming months when you have multiple competitors to worry about.
Decoupling the financial budget creates a “Pull” instead of “Push” mindset.
Decoupling the Budget process
Let’s take XDE Framework as an example. This proposes “decoupling” of all processes to achieve the best possible solution in given time, focusing on independent and futuristic business model. XDE requires us to form a temporary “Bubble” by combining specialist team members from 2 types of permanent teams, One Rule (1R) team and Product Team. This bubble can be dissolved when a planned work iteration is shipped and is successful.
Coming back to budget, as a process and an impediment. 1R team (or any team) can suddenly realise while in a bubble, that they need another technical expert to get through a planned work. Do we want them to wait and check if they have enough budget for that? No, we authorise it providing they have a sensible reason on why they need it in the first place (common sense). Dissolving a bubble is not the goal; it only encourages us to plan well before the bubble is formed.
Don’t hold the development teams responsible
We shouldn’t hold the teams responsible for not seeing an unforeseen impediment like the annual budget. We don’t need funds without knowing where we are going to spend it in a year time.
Common sense should prevail.
We need to be agile as an industry, to support the teams analysing the circumstances pragmatically. As we all know, agile mindset helps an organisation best when it comes from top down rather than bottom up.
“Pull” reduces Waste
Financial budget is dealt by a specialised Finance team in non-IT organisations. Reason why they assume that software development teams are one of many departments providing a predictable service. This is where the mindset need to change and we need to decouple the financial budget for development. Provide funds when required rather than pushing a set amount in and hope for the best.
We might be spending more in software development than required, so that next year’s budget can stay same or more – that’s Bureaucracy
As the development teams are pulling the funds when required, there will always be a valid reason and this increases trust in the culture. This culture will empower the development team members and assure distributed responsibility, rather than hoping they have enough “resource” to cover the work they planned where Finance was never actually involved to begin with.
Does this resonate with your experience working in a non-IT industry? Would love to hear your thoughts around this and will be great to hear your personal experiences. Keep calm and decouple budget for software development !