Three Unconventional Ways to Manage IT Costs

David Richards, CEO WANdiscoYou have to run leaner and meaner and so you’re intent on driving IT costs down. But where will those much sought-after cost reductions come from? One area that may not have received the scrutiny it deserves is software development.

The evidence is mounting. When Forrester Research examined the total economic impact of new software development infrastructure, it discovered considerable savings associated with the near real-time replication of source code on servers globally.

In the case of one Fortune 500 electronics company it studied, $776,509 in specific benefits was identified over a three-year period — leading to a risk-adjusted ROI of 150%. By enabling developers in Asia to perform builds locally, the new approach eliminated up to two man-days of idle time each day and increased the number of builds 100%.

Phoenix Technologies, a leader in core systems software products, discovered it could significantly reduce costs associated with production delays and lost man-hours by adopting a similar solution. By enabling continuous builds at six different locations across East Asia and North America, it reduced overall build cycle times by more than 60% and increased productivity by 30%. Previously, over two hours of development time had been lost each day due to poor network performance and outages.

So why have the costs of software development become excessive?

One clear factor is developer inefficiency. This is often a concern when developers are spread out geographically, particularly when many of them are located in regions (such as India and Greater China) with limited network capabilities. You experience clear and irretrievable costs when developers can’t promptly check in their source code to a central repository. Cycle times lengthen and projects are delayed. If time is money, then this is money that’s burning.

Another issue is network performance. After all, network failures happen all the time.. What’s the cost of developer downtime or the inability to access your source code at all? Network performance and downtime issues represent an ongoing tax on software development — imposed in endless delays and lost man-hours.

Yet another factor is the absence of Continuous Integration/Continuous Delivery (CI/CD). Companies that implement this best practice test their software builds perpetually to identify bugs, errors and other signs of corrupted code. Through this approach to quality control, they streamline software development.

But companies that don’t engage in this practice run the risk of discovering software problems late in a project, which can lead to considerable rework and long delays. Worst case: they release corrupted code into production. As I’ve written elsewhere, such mistakes can have a devastating impact on corporate finances and reputations. Knight Capital Group saw its stock price collapse and the company took a pre-tax loss of $440m as a result of bad code.

Finally, there is the opportunity cost associated with geographic barriers and boundaries. Many companies bear added and unnecessary software development costs because they cannot source the right talent in the right place at the right price. Because of network limitations, an inability to synchronize development efforts and other factors that hinder productivity, they are simply unable to get the full benefits of offshore development.

Which leads us to the question of how to confront your costs.

How can you intelligently reduce software development costs and, thus, drive down overall IT costs? Here are three proven steps you can take:

  1. Embrace Continuous Integration/Continuous Delivery. It’s been written elsewhere that “quality is free.” Ultimately, it costs nothing to implement practices enabling you to continuously test and enhance the quality of source code. You prevent defects on the front-end to ensure they don’t emerge later in the development or, worse, production process. It will save you considerable costs associated with rework and delayed projects.
  2. Commit to Highly Available Source Code. In order to enhance collaboration, avoid developer inefficiencies, and make CI/CD possible, you need high availability. Developers need the ability to rapidly check in their source code to central repositories. Companies need the ability to rapidly replicate changes to source code between servers on a global basis. And you need the confidence of knowing that network performance and downtime issues will not undermine this availability.
  3. Aspire to Software Development without Geographic Constraints. Today’s technologies increasingly make possible what British economist Frances Cairncross called “the death of distance” just over a decade ago. You can now seek the right talent in the right place for the right price. You can realize economies of scale and skill that previously would not have been available to you.

Software development may not have been the first place you considered when seeking ways to drive down costs. But, as a growing number of companies have discovered, it’s often loaded with excessive costs — both direct costs and opportunity costs.

As the evidence suggests, software development represents an important, if under-appreciated, area for achieving new efficiencies. By rethinking software development infrastructure, you can both reduce costs and accelerate your time to market.

And as software is increasingly suffused throughout the overall economy and demands escalate for new releases, you’ll find that that today’s investments in cost reduction and superior infrastructure set the stage for tomorrow’s gains in revenue growth.

 

Cheers,

David

P.S. If you haven’t signed up yourself or your team members, I highly recommend registering for Subversion Live  2012 this October. Use code DAVID45 for 45% off registration. Visit www.wandisco.com/svn-live-2012 to get more information.

avatar

About David Richards

David is CEO, President and co-founder of WANdisco and has quickly established WANdisco as one of the world’s most promising technology companies. Since co-founding the company in Silicon Valley in 2005, David has led WANdisco on a course for rapid international expansion, opening offices in the UK, Japan and China. David spearheaded the acquisition of Altostor, which accelerated the development of WANdisco’s first products for the Big Data market. The majority of WANdisco’s core technology is now produced out of the company’s flourishing software development base in David’s hometown of Sheffield, England and in Belfast, Northern Ireland. David has become recognised as a champion of British technology and entrepreneurship. In 2012, he led WANdisco to a hugely successful listing on London Stock Exchange (WAND:LSE), raising over £24m to drive business growth. With over 15 years' executive experience in the software industry, David sits on a number of advisory and executive boards of Silicon Valley start-up ventures. A passionate advocate of entrepreneurship, he has established many successful start-up companies in Enterprise Software and is recognised as an industry leader in Enterprise Application Integration and its standards. David is a frequent commentator on a range of business and technology issues, appearing regularly on Bloomberg and CNBC. Profiles of David have appeared in a range of leading publications including the Financial Times, The Daily Telegraph and the Daily Mail. Specialties:IPO's, Startups, Entrepreneurship, CEO, Visionary, Investor, ceo, board member, advisor, venture capital, offshore development, financing, M&A

13 Responses to “Three Unconventional Ways to Manage IT Costs”


  • One clear factor is developer inefficiency. This is often a concern when developers are spread out geographically, particularly when many of them are located in regions (such as India and Greater China) with limited network capabilities.

    This is not true .

    I agree to you in right talent in the right place for the right price.

  • sometimes, geographically diverged teams will have the advantage of localized knowledge pool and low cost.
    I think, most of the corporates which engage with these architecture of teams would have already measured positives/negatives of such development options.

  • I don’t understand you points here. Everywhere I have been a developer at has had the ability of local development. As a matter of fact local development would be the default environment. Today I have built my project about 20 times (I don’t know I am really not counting). Builds don’t cost anything.

    Also I would think the software development department has never been overlooked in cost saving measures. I have been places where they have off shored, replaced employees with contractors, or laid off senior developers and replaced them with college students. In all cases, the successful business mindset was do we have what we need. IE if we are paying a developer to write a product that is not needed, should we keep the software and developer.

  • Improving developer productivity is fun, but it is a local optimization. There is usually the ‘last mile’ of IT that contains the most risk and delays to realizing the value in the new code.

    Consider the all too common case where a developer completes a change in a couple of hours, but it then takes days or weeks to get through the tests, approvals, bureaucracy, as required to get the new code to ‘Production’.

    How much has the optimization of the software development team really helped?

  • Your statement that a company lost 440M dollars as a result of bad code is simply a lie and a deceipt to impress and scare readers. Even the most thorough quality control may not detect problems that occurs when sw is deployed in a foreign environment too costly to replicate. For example, we all do quality control on systems that run on ubuntu because we don’t conceive that we will have to deploy our systems in any other system for a long time. If suddenly a huge company wants to buy us and they want us to run on an Android phone NOW, the outcome can be catastrophic.
    It is unreasonable and crazy to assume that you can have a quality control environment that can handle all the possible permutations.
    Having said that, continuous deployment is a great thing but it requires resources to set it up. It’s very easy to setup continuous deployment for features that tackle features that are too trivial and not likely to crash. Of course there is value in having even the most basic deployment, but the impact in the business is not likely huge.
    But it takes a HUGE initial effort to create a system that tests features that require multiple parts of a solution to work together (example, uploading videos or making sure you receive an email notification when you click or perform certain tasks in the browser)

    Distance is not dead. Distance is very much alive and people are realizing this now more than ever. Even with improvements in bandwidth across continents people are realizing and rediscovering the value of locality.
    An overseas team can help you out do non mission critical tasks like monitoring systems or filing bugs or QA. They can also be helpful when you need a prototype and you don’t have the cash to afford local engineers.
    But when you have deadlines and you have critical commitments for real products nothing beats having local engineers with vested equity.
    As the CEO of Linkedin put it: “If I could have the whole entire company in a single bulding with a single floor, I would.” He even noticed the negative impact of having engineers in different buildings.

  • Hi David,

    as you connect this with the SVN Live event … what you suggest with geographical distribution of source code sounds more like using a distributed version control system like git. Probably I am missing something here, we are using SVN in a very small but international project and I have always been thinking that the strength of SVN is the central repository, while a system like git is better suited for distributed version control and software replication.

    Thanks and best regards
    Ralf

  • @John Long
    Read the article before making comments.
    The author has talked about Continuous Delivery (CD).
    This is a practice designed to reduce the complaints you just made.
    Regards.

  • @ Justin P M, in what way do you think it’s not true?

  • @ Arul, agreed, this article is about how to turn the negatives into positives.

  • @ Crazy Person, those are often knee-jerk responses to save some cash. This article is about to save money effectively, and without punishing your development or reducing your standards.

  • @hernancito, the amount lost by Knight Capital was reported by Bloomberg (http://www.bloomberg.com/news/2012-08-14/knight-software.html), amongst others. If not bad code what else would you call it when a new program reactivates dormant software? As far as the information released shows, this was not a case of choosing not to test due to replication intricacies or costs.

    Re continuous integration/deployment, it should not take a huge effort at all. If the onus is put on developers to ensure that they integrate often and that the code works before it’s deployed to the test environment then time will be saved in testing. If the onus is on the testing to ensure that the testing is rigorous and fast (through automation where possible) then the savings can be massive. You don’t have to build Rome in a day, you can start just working like this for new code and features, and cover older code as you come to work on it.

    Re the distance point, that’s just not what we see. Our MultiSite product enables some of the biggest companies in the world to develop with remote teams as if they were in the next room.
    WANdisco developers themselves are located in San Roman (California), Sheffield (England) and Belfast (Northern Ireland). We don’t see the kinds of issues that many people report. You wouldn’t keep many decent remote devs if you only gave them menial tasks to do.

  • Proper Automated Build System can save few millions for any enterprises. However my experience says even at build level things are so much abused that, it is a pain each hour.. Some of them I can tell are

    1. End less branching and maintenance on each branch
    2. Never merging or late merging
    3. Adopting ant and maven in non OOAD way
    4. Treating fixing in each Branch and on trunk as a separate effort

    Most of them can be easily solved if IT starts aiming to bring down maintenance cost drastically…

    Regards,
    Raja Nagendra Kumar,
    C.T.O
    http://www.tejasoft.com
    – Product Build & Code Engineering Expert

  • I’ll go ahead and say software is extremely efficient for business. Working with several companies, software has proved to be the greatest asset. Why? Because it allows them to reach the market they are targeting in new ways and compete against other companies the way they should.

    Your mention of other economies is important because there are qualified workers out there. Broadening your horizons to other countries is a possibility because there are skilled workers out there in other areas.

Leave a Reply