Back to front – why it’s the back-end that matters in business
What do Uber, Google and Spotify have in common?
If your answer is, “They are three of the best-known and fastest innovators on the planet,” you’d be absolutely right, of course.
What you might not be aware of though, is that quietly working away in the background to support all of these operational powerhouses with their frequent software updates and quick release schedules is the same back-end container technology, says Luke Bond, lead engineer at YLD.
Contain your excitement – containers are here!
Containers allow developers to package a piece of software in a complete filesystem that contains everything it needs to run: code, runtime, system tools, and system libraries – anything that can be installed on a server. This guarantees that the software will always run in the same way, regardless of the environment it is running in. What’s more, because containers running on a single machine share the same host server’s operating system, containerised applications can start instantly and make more efficient use of RAM.
It’s this functionality that has made the technology so appealing to cutting-edge organisations – from global tech giants to international banks and government agencies – looking to unlock the fast growth potential of their organisation and scalability that now characterises the world of business.
Uber, Google and Spotify operate an extreme scale service model. Uber, for example, is available in over 60 countries, employs 4,000 staff, runs a million trips per day, and has a user-friendly app with a mind-boggling release schedule. Spotify, meanwhile, delivers a reliable streaming and download service to over 60 million users every day, and Google powers a reported one trillion searches every year alone.
To work at this scale, with 24/7 availability and the constant addition of new features, requires back-end systems that function seamlessly and efficiently – and that’s exactly where containers come in.
Container technology can help businesses deliver truly remarkable organisational efficiencies by helping to break down the barriers that exist between developers and operations. Containers package up software into a self-supporting system, which means that the developer must address operational considerations from the outset, rather than writing code independently and then handing it over to operations – which could often lead to unforeseen problems at a later point.
These operational efficiencies can also result in cost savings – in terms of both personnel and resource utilisation. The transition to DevOps is complemented by the optimisation of machines, which can be utilised more effectively by running more applications at any one time.
Disruption through agility
“Disrupt or be disrupted”. This is the new normal in the world of business, thanks to rapid advancements in technology and globalisation, which allows new business models to be introduced at an ever-increasing rate and with rapidly declining costs. One key to surviving in a world of disruption, where the external environment is evolving at lightning speed, is to change the game internally. This requires companies to accelerate their speed of execution, as well as their ability to seize new opportunities.
Perhaps the greatest advantage of container technology, therefore, is its ability to enhance agility, allowing the development cycle to be sped up by reducing deployment failure. They are easy to start, stop and move around which means strong test infrastructure can be set-up in the beta stage. With this in place, programmers can be confident that they are deploying something that will do the same thing each time, which means there are fewer surprises when it comes to releasing the software.
For businesses that prioritise quick release schedules and frequent software updates – which could span everything from an online store to a travel app or news website – this is essential. If they wish to release a new feature, they can simply push their code into production through a well-tested pipeline which allows them to move both quickly and with veracity.
This gives the user the impression of a faster, more modern website or application, but also makes the business better-equipped to keep up with disruptive competition, allowing them to –keep pace with, or overtake their rivals. From a challenger perspective this is vital – so perhaps it’s no coincidence that many of the big names already implementing the technology are field leaders.
Where’s the catch?
It might sound like containers are too good to be true – the magic ingredient that will solve any business challenge, no matter how complex.
But while the benefits of the technology are proven, containers are not a silver bullet or catch-all solution for businesses looking to speed up delivery or improve efficiencies. Often, the impact that containers can have is dependent on how structurally and technologically ‘ready’ the business is to accommodate them.
For companies that are approaching continuous delivery, or the ability to build software in such a way that it can be released to production at any time, container technology will be an effective complement to improve efficiencies. However, to get to that point, the business needs to have already brought development and operations together, and should be thinking about both of these areas throughout the development life-cycle.
For businesses that haven’t quite reached this stage, containers are still a good place to start on the journey towards DevOps because they require organisational problems to be addressed earlier on in the process, rather than dealing with them when it comes to final production. This reinforces the mind-set of a unified and harmonious IT effort, as opposed to one characterised by the traditional developer/operations divide.
The author of this blog is Luke Bond, lead engineer at YLD. YLD helps businesses succeed through digital, technological and cultural transformation. Visit www.yld.io or follow on Twitter @YLDio
Comment on this article below or via Twitter: @ VanillaPlus OR @jcvplus