Sales Ended

Network Programming & Automation - Sydney, AU - July 10, 2017

Event Information

Share this event

Date and Time






View Map

Friends Who Are Going
Event description



In this 5 day course, you will learn about foundational skills as they pertain to network automation and programmability. The network industry is in the midst of change, and one part of that is the operational models and technologies used to manage and operate networks on a day to day basis. For over 20 years, the CLI has been the primary means to manage networks. Going forward, we are starting to see more open and programmable network devices emerge – this means having device APIs not only on network switches, but also on SDN controllers in the form of northbound REST APIs. In addition, we are also seeing network devices be integrated with existing DevOps automation tools.

This course covers the skills needed to take advantage of these modern network devices. The course is divided into two parts. Part 1 covers raw concepts and technologies and Part 2 focuses on automating network devices. This course includes automation of Cisco, Arista, and Juniper devices.


While there are no programming, software/dev, or automation prerequisites, students should have a good grasp on basic networking concepts.

Course Outline

Python for Network Engineers

  • Python Interpreter

  • Data Types

  • Conditionals

  • Loops

  • Writing Python Scripts

  • Functions

  • Working with Files

  • Passing Arguments from the Command Line

  • Working with Python Modules/Packages

  • Parsing raw text with TextFSM

  • Using netmiko to communicate to SSH-based devices

  • Declaritive Network Configuration with the NAPALM Python Library

  • pyntc (multi-vendor Python library)

  • Working with Jinja2 Templates in Python

Working with Git

  • Git Overview

  • Git and GitHub

  • Common Git commands and functions

  • Cloning a Project

  • Creating a git branch

  • Making a Pull Request

Network Device APIs and Libraries

    • Arista Command Explorer

    • Arista eAPI

    • Arista pyeapi

    • Cisco NX-API Sandbox

    • Cisco NX-API

    • Juniper PyEZ (py-junos-eznc)

    • Writing Scripts

    • Data Gathering

    • Configuration Automation

Using Ansible for Network Automation

    • Ansible Overview

    • Terminology

    • Device Templating with Ansible

    • Pushing full network configuration files with Ansible

    • Deeper dive into Ansible (conditionals, iterators, register, variables, check mode, etc.)

    • Vendor Modules (Cisco, Arista, and Juniper Ansible modules)

    • Open Source multi-vendor network modules such as NAPALM and ntc-ansible modules

    • Roles - Creating Network Abstractions

    • Automating Data Gathering & Documentation

    • Dynamic Inventory Scripts

    • Writing custom Ansible modules

With over 10 hours of labs (25+ labs) in this course, come prepared to learn, share, and automate!

Brought to you by Network to Code, LLC

Share with friends

Date and Time





View Map

Save This Event

Event Saved