By Graham Robinson, Group Practice Manager – Data#3
[Reading time: 3 mins]
This week, we are publishing a 4-part blog series on the future of enterprise networks and network engineers.
In 2002, Amazon Web Services almost collapsed under the weight of its own technology. The Cloud functions had grown exponentially but were held together by the programming equivalent of zip ties and gaffer tape. The use of direct software links, inter-service database access, and shared memory services meant that one programming team couldn’t make a product change without threatening the viability of other programming teams. Documentation was poor and change management was near on impossible.
Frustrated by delays and outages, Jeff Bezos (CEO of Amazon) demanded that all Amazon services be built in such a way that they could easily communicate with each other over Web protocol, ultimately issuing a mandate requiring all teams to expose their data and functionality through services interfaces only, or be fired.
Put succinctly, the use of service interfaces (or APIs) was not something that would be an afterthought for AWS customers, but rather an internal product development strategy itself; a way to ensure that future services changes could be compartmentalised.
In the 14 years that have followed, the use of APIs has seen AWS increase its speed of development, deliver new services of unparalleled size and scale, while simultaneously improving security and reliability.
The same shift in thinking which underpinned the Amazon mandate also made the iPhone’s success possible. Apple’s release of its software development kit in 2009 opened a new world for developers with APIs allowing applications access to everything from Cloud services to the underlying device. In response, developers created new business services and customer experiences which Apple could never have dreamed of. For those interested, Stephen O’Grady’s The New Kingmakers is a great read that expands on these examples.
Entire industries and countless new businesses have blossomed, digitising everything from business services (e.g. Salesforce.com) to the human experience (e.g. Facebook), all using the power of software to connect people, processes, and things in new and innovative ways.
No matter where you look, organisations are investing in software-centric approaches which support business digitisation, and infrastructure providers are no exception.
Application Centric Infrastructure (ACI) was released in 2014 and was Cisco’s first implementation of a service-orientated architecture (SOA). ACI removed some of the traditional command line interfaces, instead replacing them with a graphical interface which accessed underlying APIs on behalf of the engineer. Since then, Cisco’s investment in a software-first strategy has only accelerated, culminating with the recent release of its Digital Network Architecture (DNA).
As Cisco’s products align with DNA, the skills required to design, deploy and support business networks are rapidly changing. Network engineers will increasingly need to reskill; moving away from the traditional command line interfaces that they’ve relied upon for decades and towards a deeper understanding of new business services and the software programming, SOAs and APIs that will make them a reality.
With such a significant change on the horizon, the next five years will fundamentally redefine what it means to be a network engineer as hardware, software and entire businesses become increasingly interdependent.
This is the first of a four part of a four-part series to help network engineers understand how software development will impact the enterprise network, and how augmenting their existing skills with even basic software development capabilities will help build more stable, secure and efficient networks to support business applications.