How software development teams can do more with less
In this guest post, Anjali Arora, executive vice president of product and development at open source DevOps automation tools provider Perforce, outlines the steps cost-conscious IT leaders can do to streamline their software development processes
Software development teams are under extensive pressure to achieve more with less. On the one hand, team leaders are dealing with demands for developing code faster and on a much larger, more complex scale than ever before while ensuring it is of high quality, compliant and secure. On the other hand, many leaders are also operating with reduced or frozen budgets, and limited team sizes. However, there is much that organisations can implement to keep software development projects on track, even in these challenging times.
First—and this may sound obvious, but: prioritise appropriately across people, tools, and facilities in different geographies. Those are the primary areas where money is spent and if an organisation prioritises properly, it becomes clear where expenditure can be minimised. Prioritisation also means clarity around organisational goals and alignment of those goals.
Prioritisation and goal-setting may mean making significant changes, so doing more with less depends on building consensus. Understanding people’s motivations and expectations and handling any objections before taking action is essential. In my experience, listening to other people’s opinions usually leads to a better solution.
It is also vital to understand that developer productivity and developer joy are not two opposite ends of the spectrum—quite the opposite. I have been in development for over thirty years, and I have found that if developers enjoy what they are doing, as long as that is aligned with the organisation’s goals, then productivity will follow. Developer joy and productivity are directly correlated.
Automation is key
Automation is crucial for doing more with less for a couple of reasons. First, it removes mundane, repetitive, or error-prone tasks from software development teams. Second, the faster organisations can get on their automation journeys, the faster they will be able to start tackling technical debt. In practice, automation might reduce technical debt, compensate for it, or—depending on the circumstances—be such an advance that technical debt even becomes obsolete.
Not all organisations can automate at the same velocity, but regardless, there are some fundamentals surrounding success that—again—relate to organisational goals. For instance, suppose the goal is to improve the quality of a product, and that includes having the right requirements, design, and testing. When each milestone is reached, it is vital that a portion of the actual goal is achieved. Otherwise, the needle has not moved. Milestones should contribute towards goals.
Here is a real-world example. Perforce has a centralised cloud operations team that manages all the cloud environments and products that we use. The team built their own in-house software to optimise, manage, and improve the security around our use of cloud technologies. Not only have they achieved that goal, but they have also saved us millions of pounds in 2023. For any organisation, though, automation is a continuous journey, one where we all need to look at ways to improve in line with what the business wants to achieve and align with the evolving IT environment.
For instance, in software development today, there are more platforms, operating systems, browsers, devices, clouds and more technologies in general to support. At the same time, security risks are increasing. So enterprises need to be very precise with what they are trying to achieve with the number of skilled people and tools with which they have to work and what needs to be consolidated.
DevSecOps can directly contribute to achieving more with less. This practice advocates for two concepts: agile development (with small but highly motivated teams) and shift left of everything in software development. Adopting shift left means having customers’ requirements earlier, scanning code for issues as it is being written, and fixing bugs earlier rather than later when the cost increases. DevSecOps leads to a more efficient organisation that saves on unnecessary expenditure.
Finally, make the most of what already exists. Instead of ten external hires needing time to get up to speed before becoming productive, find enough people from within with the right mindset, give them the right support and tools, and they will become productive faster. This is all part of not thinking about wanting more but what can be done with what already exists.
Sure, all these recommendations take some effort, but consider them an investment. Putting in place the right culture, strategy, and discipline around doing more with less not only helps organisations survive today but creates a set of best practices that means they can thrive and be more robust in the future.