Google announced recently part of its strategy to eventually overtake Amazon. The strategy has many facets and much is not disclosed yet but I believe the goal is achievable for many organizations.
Of course you still have to build your applications. I am not talking about the part of IT related to building your core value and the thing that makes you special as a company. What Google and I am talking about is all the other technology you need to stand up your applications.
I talk to many organizations from large financial enterprises such as Fidelity and Blackrock which manage trillions in wealth and small companies that frequently are building solutions for a small market. In every case the developers and the management they really don’t want to spend more time on IT infrastructure and its management. Developers may be fascinated initially with learning and playing with some of these pieces but over time the DevOps responsibilities of these components are not that interesting. Just like the management they are really looking for something that simply makes most of the deployment, management, maintenance of IT infrastructure go away.
So is DevOps a solution?
One question might be: What is IT infrastructure? It can be a large number of basic things we need to implement applications. For larger organizations it could be something like policy management (ala the Borg at Google), sophisticated intrusion detection systems, load balancing infrastructure, certificate management, service discovery, configuration management, container orchestration, file systems and other content storage vehicles, AAA security, performance monitoring, alerting systems, log management and analysis, replication management, auto-scaling, backup.
You may also consider higher level functions part of IT basics. This could include BigData stores, API Management, Integration Orchestration tools, BigData analysis tools, visualization tools, back-end mobile platforms or web service frameworks and many more. On top of that are the many development platforms that developers prefer.
What we have is a huge flexibility to choose but almost no information to help people to find or choose among the possibilities and more important the combinations that might work best together.
The market is replete with dozens of competitors in each of the categories I described above. Each of the competitors in the spaces I described above has a best use case for certain types of solutions and types of organizations. Sometimes the decision of which piece above to use depends on the choice made for another.
Most organizations do not have the expertise to choose the components of their IT infrastructure well. In some cases they don’t even know what would comprise a best practices IT infrastructure. They have told me repeatedly they don’t want to put the IT infrastructure together, maintain it and in some cases to even operate it.
Many companies are willing to pay highly paid consultants and companies to put together web scale IT infrastructure for them. They pay millions for this service in many cases using free open source components for almost all the IT infrastructure pieces. Other companies make do with incremental IT building one piece at a time as they discover they need it.
A large part of making this new component IT infrastructure work today is automating the deployment and maintenance of it. Each company is discovering the lessons of others with very little help in what things work together, what things work at the scale they want and have the right features.
Ultimately this is not what the developers in these organizations want to do or feel it adds a lot to the business value they are trying to create. It is enabling technology but all the flexibility is unneeded. They simply want something that works.
All the tools in the world don’t solve this problem.