As we discussed in our previous blog post, DevOps is one of the hottest topics among app developers at the moment and the issue around it are continuing to frame conversations at the most senior business levels. This year, VMware is the proud DevOps sponsors of the inaugural Business Rocks 2016 summit in Manchester.
We caught up Joe Baguley, VP & CTO of VMware EMEA, who will be sharing his thoughts on DevOps at Business Rocks 2016 this year. In this post, Joe shares his views on the relationship between the dev and ops teams plus a sneak peak of what he’ll be discussing at this year’s event.
- Why is DevOps such a hot topic right now?
Though dev ops is a widely discussed topic in the world of marketing at the moment, few people truly know what it’s about. It feels similar to the earlier days of cloud, when everyone was buzzing around it yet I would challenge that most people really didn’t get it.
Ultimately, with dev ops the now popular micro services-based methodologies of developing applications like Internet giants such as Google and Netflix have far outpaced enterprise IT’s ability to keep up. We knew this, right? But it is happening much faster than anyone really thought. So what has happened in most organizations is that a chasm has emerged between the fast-paced developers and IT. Now, everyone is filling this gap with ‘DevOps’. From my perspective, in its purist sense ‘DevOps’ is all about helping to understand and broker the needs of developers and operations.
Now the world of ‘DevOps’ is trying to find its place. Developers are looking for new and exciting ways to do things and increasing their demands on the IT teams and the infrastructure to run their apps on. So the real issue or area to resolve is, if they are currently talking different languages – what is the language they should be using?
- Is DevOps a priority at the business level? Does it register at a senior level?
No, I don’t think it is an issue registering at a senior level. If developers are meeting the demands of the business, then it is not an issue that needs to be addressed at that level. The challenge is between developers and IT. But I would say that it would become an issue higher up the ladder if it was stopping them get their job done, or when the business asks for something and it can’t be done on AWS or Azure and needs to be done on premises – that is when it will increase in priority.
- Are we on the right path to bring development and operational teams together so that developers can develop and innovate at pace and scale without infrastructure limitations?
We are absolutely on the right path to bring developers and operations teams together. The challenge is, however, how people are approaching this path. The ops team, for example, is starting from where they are, build something – infrastructure, networking, security – and then approach the developers. Which of course doesn’t typically work for the developer and so invariably ends in a squabble and then starting again. The better approach is to start with the developer, have a conversation about their needs and then work backwards. The ops need to start at the right end of the path. Rather than starting with infrastructure they need to start with the developer’s needs.
Another vital facet and which gives a lot more context to the issues the ops team is facing is that their ‘customer’ is changing. The customer of the IT dept. is no longer always the line of business head alone or a mandate that the company is now using Oracle. People are developing their own apps – and the ops team is having to deal with this and make it happen through developers. They are not just buying an app but having to develop it. This is a massive cultural shift, and so adds to the task at hand. But knowing this makes it easier to see where each is coming from and then how it can be resolved.
- What skills and what technologies are going to be required?
There has been a seismic shift in the role of the ops team, and gone are the days when the IT team would be tasked with just deploying complete systems, for example a database or a website. Now their role is so much more – the department has to develop services, and it is the developers that are key to making this happen. It is the developers who are building the apps on top of that technology.
With APIs, ops can provide developers with all the component technologies for the project and then sit down with developers to define the interaction with these components. This is the challenging bit.
So, the definition is not in the solution itself now the paths that need to be taken and how IT interact with these paths. So, the skills now required are not in the systems but these interaction points. And this then gives you immense freedom. Think of a USB port, this is a great example of an interaction point. For IT, the skill is in what that USB enables – immense choice on either side of the plug and socket, but also a well-defined interaction point. So, ops and developers need to be aligned to that way of thinking – defining services.
- What is the best architecture for developers to develop enterprise applications?
To be honest, the skills and technologies and architecture are all part of the same conversation. The best architecture is all about service interactions, e.g. an API – i.e. how can I use this component to talk with something else. This is, of course, all relatively standard. But the great thing about APIs is that you shouldn’t really care about what its calling upon. For example, in your home electricity supply, the API is the plug. You don’t need to care about the power generation, if that’s coal or where it comes from or when the power supply changes. What you should care about is that this plug enables me to use the fridge, computer and TV. For developers, they need to care about how to build the right applications that enable users to do their job and the business to perform. They don’t need to care about the infrastructure, but what services they need and how they pull them together.
- What’s VMware’s relevance in this world?
At VMware, we are working with our Cloud Native apps division to work on a platform for all the different types of applications. Cloud Native apps are being built in many ways including containers – but our guiding light is on building a platform that meets the need of traditional, legacy applications and cloud native applications.
For many there is a big gap here – and we are trying to close the gap.
In simple terms, a developer might want to use a Docker API; they then need to go and ask for a virtual machine and then build their own Docker environments. With VMware, however we can provide the Docker API directly on top of vSphere – which is already in their data center. This in itself is bringing developers and ops together. An application-ready platform for any app without having to deploy anything new and without the need for other infrastructure.