Barely five years ago, software developers in the United States and Europe were encouraged to look for other lines of work. India and China—according to those in the know—were destined to snatch up all the appealing coding jobs. That clearly didn’t happen. What did happen was an unexpected avalanche of new coding opportunities, brought about by advances in mobile, social and cloud platforms.
Seemingly overnight, every company had the power to be a software company. Executives set to work reimagining their businesses and the products and services they could deliver. Developers, who had previously been expendable, became indispensable. Charged with creating the code that would underpin businesses’ newfound success, they became royalty.
(Related: How to use DevOps to navigate ALM)
Today, developers continue to be kings and queens. As such, they are entitled to special treatment and accommodation: a robust technical environment that supports their coding work, full and unfettered access to the cloud and IT resources, and the autonomy to experiment and create the solutions that customers want and care about. But that doesn’t mean they should have free rein over the IT castle. Developers need freedom—but that freedom must be tempered with controls that keep costs in check.
The developer-as-king phenomenon highlights the competing stances of two modes of IT operations:
- Traditional operating models adhere to ITIL practices for IT service management. In this approach, IT services are aligned to the needs of the business and developed in a waterfall mode. This traditional approach is necessary for mission-critical IT development projects that demand stability. But it is slow moving. Its arduous approval processes stifle speed and responsiveness and inhibit the business benefits that so many leaders now seek.
- Today’s emerging DevOps models, on the other hand, focus more on agility than control. Because they rely on the as-a-service models and resources of the cloud, developers have access to real-time insights and the opportunity to change code and update software on the fly. This means they can tinker with code thousands of times per day, if needed, with no negative effect on software stability. Free of most change-management requirements, infrastructure can be refined continuously and automatically. In this mode, business benefits are more quickly realized. The speed of IT development becomes a distinguishing, competitive advantage.
Understandably, IT leaders are drawn to the shorter development and release cycles that DevOps models make possible. Yet, Accenture has found that many companies simply aren’t ready to make the shift. There are a number of reasons, including:
- A reliance on old ways of working. While DevOps offers clear advantages in speed and agility, linear waterfall models still serve a valuable purpose. Many leaders are simply unwilling or unprepared to abandon the structured ITIL models, documentation and predictable outcomes that have served them so well in the past.
- The lack of a coherent DevOps strategy. A transition to DevOps won’t happen overnight. One software tool won’t be a silver bullet. Accelerating software development requires a combination of new people, tools and processes. Organizations that are large enough to provide the support and environment that are needed will have an advantage.
- The lack of commitment to change. Successful long-term DevOps approaches will require continual adjustments to methodology and tools. Companies must be committed to the creation of a more flexible and always-changing development environment. At this point, few are.
The truth is that choosing the right development model needn’t be an either-or proposition. Both ITIL and DevOps are valuable, since they support different IT requirements. A hybrid model, therefore, may offer the best of both worlds. Managed services are critical in this scenario because they allow companies to overcome the challenges of implementing DevOps on their own. They facilitate changes to capacity management and financial management. And they help introduce new roles that take IT service delivery to new heights.
The benefits that are achieved when companies underpin their hybrid software development approach with managed cloud services are immediate. Ultimately, a centralized cloud-management platform balances the freedom that developers crave with the controls that businesses require. Within such platforms, real-time policies, approvals, and change quotas still exist. But their numbers are significantly reduced. Rather than dictating the developers’ every move, managed service policies define broad standards of behavior. If developers fail to adhere to, say, tagging requirements, companies still have the authority to automatically shut their projects down.
So, if you want the best environment for developers, and all the other “subjects” of the IT kingdom, your cloud-management platform and managed service solution must be robust enough to offer more than just a compromise between control and agility. It must deliver a host of features and services—from security and analytics to cost visibility and governance—designed to optimize your IT empire and empower all your royal subjects as one. As Redmonk prophetically called it years ago, the developer has indeed become royalty; however, it is the cloud that is now accelerating this phenomenon and the enterprise adding richness and substance to the trend.