CIO.com asked IT leaders what they wish developers knew so that the programmers don't appear clueless to the rest of the organisation. The bosses' responses, gathered from eight CIOs and IT managers and which have been anonymously condensed, show that many developers need to gain the bigger-picture view of their organisations to appreciate the challenges of those "clueless" CIOs.
"It turns out that the concepts of business strategy bear repeating," observes one IT director. "Developers get so heads-down in the minutiae of coding that they forget about the 40,000-foot view of the business."
Developers Don't Think Practically
Developers often look for an elegant or slick solution to a problem, but they don't always look for the practical one. "I've had developers that will go to any lengths to write something instead of buying it, even if their hours cost more initially, plus upgrades and testing each and every time the data base or interfaces change," notes one CIO. "I rid myself of one of those [developers] recently."
This CIO retells a story: "I had to fire a developer who never had an error when his program compiled; he desk-checked [the application] so many times to assure himself (and it was a source of his pride) there were no errors. The compilers had error checking routines to do much of the same thing. His programs were elegant, but he got fired for scarcity of output. Others who used the compiler testing were completing 300 per cent of his output, but he just couldn't give up his opinion of the correct way to do it."
Developers Still Don't See the End-User Perspective
Solving business problems is more complex than everyone imagines, says one CIO. But to IT management, the business unit and the development team, these problems often appear quite easy to solve. "Getting your development team to truly see the world from the end-user perspective is important and much harder than you would think," notes the CIO. "The developers need to learn to quickly empathise with the end users' needs and issues-and attack the solution from that perspective."
Adds an IT director: "Personally, it is surprising to me that most of the developers that I work with still have no sense of the user experience. A development team can create an application that does everything from balance your cheque book to burning your toast, but if the user interface sucks, no one will use it. No amount of training or re-training will make users sign on to an application with a difficult UI. That simple concept seems to be a struggle for developers to understand."
Another CIO adds: "As a developer, I want to add as much functionality as rapidly as possible to keep users happy."
"As a CIO I want the users to still be happy five years from now, which takes a bit more upfront planning."
Developers Can't Get Away from the "Wow" Factor
Developers love the "cool" or "wow" factor of applications. CIOs seek stability and standardisation. "It's more efficient to be on one platform than to spread your resources thin over many because you bring in the best new tool without retiring the legacy," says a CIO.
Another CIO points to the dire need to build applications for reliability and scalability. "Many business owners have a short attention span and limited patience. We need to engineer applications for rapid performance under maximum load," the CIO says. "An application with fewer features that is completely stable and fast is better than a full-featured application that is unreliable and slow."
"I'm less concerned about cool technology or wow factor," the CIO adds, "and am more concerned that the finished application supports the required business processes."
Developers Don't Think About ROI, TCO and Other Business Priorities
A CIO has to balance a whole panoply of choices and pressures, says a CIO. "Often the best way to do something is to make it cost effective-not cool. CIOs have to weigh risks and costs and potential benefits. Remember the 80/20 rule, think of return on investment and total cost of ownership issues and business priorities. The developers have a limited number of tasks to do and can pretty much concentrate on one item. Many have spent their career focusing on the development of simple working units, not running a business."
Another CIO says that "the CIO is not only responsible for getting the right technical solutions to the company but also ensuring that a number of additional objectives are met including TCO, positive relationships with the business units, the strategic use of the IT function and more. Getting this done may make the CIO look aloof or clueless-but without this leadership, IT will fail in the organisation."
The IT director says that developers also lack a sense of how their work impacts the business and therefore the bottom line; or a broad knowledge of the business strategy. "These are fundamentals that need to be included in any in-house developer's career development plan," the IT director adds.
Developers Don't Get the Underlying IT Value Proposition
The CIO is trying to show the overall value of the IT function to the organisation, notes one CIO (unless it is a software company, which is a different model). The executives that CIOs have as customers are trying to get an answer, perform some function and get their jobs done.
"IT to them is like electricity: they need it, but they don't appreciate it," says the CIO. "Having the 'prima donna' developers' attitude that the organisation exists to provide them with some intellectual stimulation is not what the executives want to hear or feel!"
Instead, some developers think it's all about their code. They fail to understand the mission of the business and "that they don't drive it, they support it," notes the IT manager. "Their work is often not mission critical or urgent."
Developers Don't Have (or Want) Corporate Skill sets
Most developers do not have the skills to become a CIO, observes one CIO. "I think a survey would show that 80 per cent of the CIOs that came up through IT to be a CIO came through the operations side," says the CIO.
The skills required of an IT leader, the CIO contends, are not those of a developer: CIOs have to deal with uncertainty-not hard and fast coded rules; CIOs have to manage the economics of IT-not the technical "coolness" factor; CIOs have to live in a world of compromise-not the "one true answer."
"I think it is like the Mars and Venus gender discussions," notes the CIO. "What they see depends on where they stand, and they stand in completely different environments."
Developers Aren't Into "Group Think"
"When you get a technical team together to discuss issues and ideas for improvement you will hear what sounds like a consensus set of issues and solutions," observes a CIO. You need to probe deeper, the CIO says, because "each technical person is different and when asked individually you will find that they do not all share the group opinion, thus solving for the group's suggestions won't bring about all of the desired results."
Along similar lines, another CIO points out that "the lone genius developer" is a risk to the organisation since his departure can put entire applications at risk. "Every application needs to be developed by a team and have thorough documentation so that it does not depend on any one person," the CIO adds.
Developers Don't Understand Staffing
One CIO says that developers think that profitable companies shouldn't have layoffs, which the CIO feels is clueless. "That's like saying as long as the flowers are growing, you shouldn't prune," the CIO says. "Efficient companies need prune back in areas they grow out of to preserve the strength of the overall company."