Software developers are no longer the back room boys and girls of business. In a world where mobile applications can be a primary revenue source and customer relation tool these people are central to business success.
Which is why many companies are changing the way software development happens and how it relates to the rest of the firm.
The usual divide in software teams, and in businesses more widely, is between operations dealing with day-to-day running and maintenance versus a development team focussed on the future.
There is a natural tension between ops teams who want stability and regard any changes as almost their natural enemy and those focussed on the future.
Many companies have a management structure which is divided in the same way. The traditional role of the managing director dealing with operations versus the strategic thinking which a chief executive officer is meant to provide.
There are many problems with such a structure and recent changes in the role of technology in building better enterprises have made these issues even clearer.
We’ve probably all had experience of corporate change being handed down from on high by senior staff with little or no understanding of the day-to-day running of the business.
Looking at future development without a thorough understanding of how current products function, or don’t function, is a missed opportunity.
Ignoring the knowledge and experience of the people dealing with current software is missing what should be a critical advantage for the business.
This was a problem when software was going through a planning, testing, piloting and roll-out process but it is a division which really doesn’t work when software, and business models, are going through almost constant change.
This ever-changing landscape needs different types of teams made up of different groups of people. Instead of teams of developers handing software over to the operations team companies are creating mixed teams with wider responsibilities.
Indeed teams can include members from almost all parts of the business.
Many companies are adopting this type of structure and with it more ‘agile’ working practises.
The details of what ‘agile working’ should look like are argued over by different groups of management consultants. But being agile means not getting too obsessed with definitions and not losing touch with what the word actually means.
Some of the broad lessons are dividing work into manageable pieces rather than massive production schedules. This allows lessons to be learnt which will hopefully provide positive lessons for the next stage of development.
Wherever possible it means moving closer to how mobile applications are developed – with frequent small changes rather than big upgrades chock full of changes.
Even more than other kinds of corporate change this sort of move requires serious commitment from staff across the organisation. You need to explain the benefits and show how it can improve almost everything about the way a company functions.
And of course you need to be agile about it – not all this will work in all situations so don’t be afraid to adopt the parts which suit your business best.
Building links between teams which have traditionally been rivals is difficult. Start slowly and look for the issues where they have a common interest.
Even better is to find an area where improvements can be measured to prove to both teams, and to senior managers, that the change is worth pursuing.