CLIs and APIs

#sdn #devops #cloud What you need to do isn't changing, just how you do it.

Lawrence Clark Powell

“We are the children of a technological age. We have found streamlined ways of doing much of our routine work. Printing is no longer the only way of reproducing books. Reading them, however, has not changed.”
Lawrence Clark Powell


The age of data center automation is upon us. Whether it's cloud or SDN or devops in general, automation as a means to achieve efficiency and, one hopes, free up resources that can be then redirected to focus on innovation.

As is always the case when we begin to move further upwards, abstracting more and more from what is essentially bare metal, there begins to permeate throughout the industry a perception that core skills are no longer necessary. After all, it's push-button IT. I don't have to know anything about BGP or OSPF or RIP or MAC addresses to deploy a web server for my application. And with the speed with which automation and orchestration efforts are pushing forward, I soon won't have to know or care about an IP address, either.

But while developers of games targeting tablets and phones may not need to understand (or care about) the inner-workings of the hardware platform, someone does. Someone still needs to understand network and application protocols and develop the frameworks atop which other developers can write and deploy games. The same is true in the network. While SDN and orchestration solutions promise simplification of configuration and management, ultimately someone still has to understand the difference between OR and XOR, AND and NAND, and PUSH and POP.

That remains true as you move up the stack. Someone has to understand the difference between SharePoint and Exchange, between a Web 2.0 and a WebSockets application.

Delivering applications, you see, has not changed all that much. HTTP is still HTTP. TCP is still TCP. We're still operating in a very basic client-server pattern. Reading has not changed, just the method of getting the book put together. Delivering the application hasn't changed, just the method of putting the chain of services required to do so together.

That means that the same skills that have been valuable to operations thus far will still be valuable to operations in a fully software-defined data center because, well, someone still has to know how to put the book together. While it's true that automation of best practice configurations is available, someone still needs to understand that configuration and how the pieces play together in the event that troubleshooting or tweaking is required. 

There's also a need for new skills, such as how to chain services to orchestrate a software-defined data center using emerging cloud management platforms like OpenStack and VMware. Skills that enable operations to programmatically insert services and policies into the network using network-side scripting languages like node.js will become more and more valuable as organizations begin to leverage the opportunities afforded by the more fluid network and application network architecture inherent in SDN and cloud computing models. 

It's not that your operational skills are becoming obsolete, it's simply that the methods of applying the knowledge you've gathered over the years are changing. You'll use APIs instead of CLIs and HTTP instead of SNMP. You'll just need to learn some new skills, in order to apply the very valuable skills you already have. Face it, you know when Nagle's been turned on somewhere in the network just by the response pattern of an application incompatible with the algorithm. How you turn it off or change the data path for that one application it is what's changing. 

So when people become concerned about their futures because of all the changes going on, it's good to stop and take a deep breath and recognize that the more things change, the more they stay the same.


Published May 13, 2013
Version 1.0

Was this article helpful?

No CommentsBe the first to comment