Automation & Programmability
Showing results for 
Search instead for 
Do you mean 

Can you automate Automation for me? - By Intern Animesh Kumar

by Trusted Contributor on ‎08-21-2015 11:28 AM

Here is a great blog by my intern Animesh Kumar. He worked for my over the summer and created a great tool Ptolemy: The Network Cartographer. For me it was an amazing experience and I am so happy to have had Animesh working for me this summer.

 

By Animesh Kumar: 

 

During my initial years of work in IT industry I used to work on Automation of test suites for the tools I had developed or the APIs I had written. My notion about Automation at that time was to make everything in a program or tool run automatically without any manual effort. One click of a button and it should run all the scenarios by itself, covering all the possible test cases and corner cases. For doing this, I used to think of all the possible test cases, negative or positive and automate the testing for it. But every time a new bug came in and my test suite failed catching it, used to frustrate me a lot that even after putting in so much effort, I was unable to automate the testing.

 

Initially it made me feel demotivated about Automating tests since it always required more effort whenever a new bug came in. But I didn’t realize it at that time that even though I had to work more to enhance the existing test cases, my old test cases were still going very strong to catch all the regressions, if any, caused by any bug fixes made. By automating a lot of scenarios, if not all, the program was certainly saving a lot of effort and time in re-testing majority of very common scenarios which were to be tested again and again for regression every time a code change happened. As I kept working on this and started reading about automation, I realized that whatever I had done so far was real automation too. It was saving me a lot of manual effort to retest the old features and the new tests getting added every week was simply making our Automation better.

 

After joining Juniper Networks, I got to attend various meetings and meet a lot of people, with varied level of understanding for automation. There were people having expectations that automation will remove any manual effort and once we are done automating, things will start working on it's own and there will be no manual effort required. That was the notion I had few years back and now it was time for us to change that perception and make them understand the essence of Automation. Automation is not just about automating to a level that automation starts automating itself. It's a path to make lives simpler. It's can also be taking just a small task out of an engineer's daily life which has to be done day in and day out and sometimes several times a day. You might say that it doesn't help you much as you still have to do most of your tasks on your own, manually. But the important fact that most people overlook is the time and effort saving done by automating one small recurring workflow of their daily tasks. It is important for us make people understand that.

 

During this summer, I worked on a project, which aimed at making lives a little simpler for network engineers. I developed this tool called "Ptolemy - The Network Cartographer" which creates a map of an already existing physical Network Topology. Initially, when I had started working on the project, I had my own fears that will this idea be widely accepted by people? After all people were doing topology map generation for years and they would have become experts in it by now. Will they choose to change to another tool? Will my tool be good enough to solve all of their problems? There are many tools out there, which do similar things or maybe provide better visualization for a topology. Will my tool be used? There were lots of doubts in my minds.

 

All my doubts were put to rest when I talked to people for whom the solution was being designed. Generating a map of an already existing topology can take hours and a lot of manual effort to design, even though there are many easy to use (read drag and drop) tools present in the market. Also, every time there is a change in network topology, existing graph diagram has to be either redone completely or has to be edited. When I showed them a half implemented prototype to a team of network engineers, they were really happy to see it and told me that they will start using the tool as soon as it gets ready. Also, there were other network engineers who were not looking for graph generation capabilities of my tool but wanted the information about the network topologies, which my tool generated in order to make graphs. It was after talking to both these set of engineers, that I realized that there is not necessarily a complete solution always that people need, to solve all their problems altogether. Often times it is a combination of multiple small solutions, which makes a repetitive task lighter than, it was earlier. It's important to look at automation in that way too.

 

Automating small portions of a large system can also make a significant impact. Also, these automated solutions must be made as per need basis and customized as per the requirements of customers or stakeholders. Working in automation team at Juniper Networks was a great learning experience for me. I got to learn new things as well as overcome some wrong notions I had about automation and a chance to develop a tool, which will hopefully benefit a lot of network engineers.

Comments
by shabbiralpha
on ‎09-16-2015 01:10 AM

Would you like to share information on how you did it? because i have developed the same thing for Junos and is now extending it to other vendors. is your solution opensource and freely available?

Announcements
Juniper Networks Technical Books
About the Author
  • Ben has been working with service providers around the world for the last 15 years developing business cases for a variety of product concepts and new ventures. Ben holds an MBA from MIT and a BS & MS in Mechanical Engineering from Johns Hopkins University.
  • Part of Juniper PS EMEA since 2005 Primarily interested in making technology do the boring repetitive work so I can do fun new work.
  • Donyel Jones-Williams is the Director of Service Provider Product Marketing Management overseeing all of Juniper's Service Provider Products for Juniper Networks. In this role, he leads all of the internal and external marketing activities for Juniper with respect to routing, automation, SDN and NFV. Prior to joining Juniper Networks in January 2014, Donyel was a Senior Product Line Manager for Cisco Systems with in the High End Optical Routing Group managing product lifecycle for multiple products lines helping telecom providers operate efficiently and effectively including; ONS 155xx Product Family, ONS 15216, ONS 15454 MSTP, Carrier Packet Transport Product Family, ME 2600x, & ASR 9000v. He also negotiated favorable agreements with 3rd-party vendors furnishing components and parts and conducted both outbound and inbound marketing (webinars, case study-development, developed and delivered both business & technical at Cisco Live 2005-2012). Donyel graduated from California Polytechnic State University-San Luis Obispo with a Bachelor of Science in Computer Science. While attending Cal Poly SLO he was a collegiate student athlete playing football as a wide receiver and a key member of the National Society of Black Engineers. Donyel is now an active volunteer for V Foundation.
  • Dwayne loves everything related to automation and enjoys talking about it: Automation benefits outweigh any associated disruption.
  • Ebben Aries is a Principal Engineer for Junos Manageability in the Juniper Development and Innovation Division.
  • Marcel Wiget is a member of the Routing TME team. His career within Juniper started back in 2009 as a Senior Systems Engineer driving one of the first MX based Broadband Edge deployment to success. Prior to Juniper, Marcel held various positions in pre-sales, professional services and development at Chantry Networks, Spring Tide, Nortel Networks and Wellfleet.
  • Michael Pergament, JNCIE-SP #510, JNCIE-ENT #23, JNCIP-SEC
  • Pallavi Mahajan is Vice President Engineering, Junos Engineering, and leads the Junos Programmability & Automation teams
  • Product Manager, JUNOS Automation