Software is what’s required to make the train run on time and keep the lights on, or perhaps a little more tangibly stated, software is what some IT guy writes to produce those reports that management expects at the end of every month.

Software is everywhere and it’s a lot of things, but in accounting terms, it’s merely an operating expense. In other words, software is merely a cost you must control to positively affect the bottom line. 

That was Then, This is Now   

Viewing software as an expense is a management tenet that expired long ago. Unless you’ve been living under a rock, you’ve already heard that your organization is in fact a software company that’s operating in the API economy – making software a business asset.

For example, the application programming interface or API is a piece of software that specifies a set of functions used to connect the services and features offered by your business with popular social and mobile applications. And if strategically positioned correctly, APIs can drive incremental sales – and lots of them.

In case you’re still not convinced, maybe it will take someone like Marc Andreessen to explain Why Software is Eating the World. I could cite article after article about how and why software is critically important to the future of your organization.

The Need for Software Engineers

Whether you’re new to the “software-is-critical-to-your-business” bandwagon or have been there from the beginning, I’m willing to bet you face the same challenge so many organizations are facing in today’s tight labor market. Software continues to innovate with such speed that new technology is moving from cutting edge to mainstream at a rate that continually outstrips the availability of software engineering skills.

And while demand for information technology skills is at an all-time high, the number of candidates making themselves available on the market is low. To make matters worse, universities are producing graduates without the necessary skills to be successful.

While the skills shortage appears bleak and could adversely affect a business’s ability to successfully execute, it also presents an opportunity to those organizations able to effectively mitigate the IT skills shortage. Developing a talent acquisition strategy can be a first step in turning this challenge into opportunity. Here are some suggestions on where to start:

  • Regularly reassess IT skills. As your business strategies evolve or the technology changes, so too are the skills required to get the job done. Your organization should regularly perform a gap analysis between where you are and what IT skills are needed to get you where you want to be. The more acute the gap, the greater the likelihood you should consider outside consultants or services firms.
  • Invest in your existing staff. Consultants should not be considered a long-term fix. While consultants can keep a project moving forward, IT managers should be looking to back-fill the required skill set with a new hire or training of existing staff. And it’s important to remember that the ability to learn fast is as important as possessing skills in the latest, greatest technology.
  • Consider a college recruitment program. If you’re looking to mold new talent, there’s no better place to recruit than a college campus.

Using Software Engineers Wisely

So with a talent acquisition strategy in place, how will you use all that new-found software engineering capacity? In the context of developing an IT strategy, it’s one of the more important questions you must answer.

In my opinion, it is also one of the easiest questions to answer. When, for the foreseeable future, the capacity to develop software will remain constrained and the need for software unquestioned, the economic law of supply and demand forces your hand in the decision-making process. This basic premise dictates that you leverage your assets where they can achieve competitive advantage.

In practice, what does this mean? Unless you are already in the operating system business or have a business plan for a new operating system, there’s no reason to have your software engineers write an operating system. Why? Because, by definition, that OS is not what distinguishes you from the competition in the minds of your customers. It would be a misallocation of resources.

Conversely, what if you are in the retail business and the profit margin on any single item might be measured in pennies? Then spending engineering talent developing logistics software, that reduces distribution costs, gives you a competitive advantage.

With software evermore strategic and software engineers seemingly always in short supply, acquiring engineering talent for competitive advantage is a conversation every CIO should be ready to have.