Python Network Automation Course

In-Person Training Session

San Francisco, Four days

Tuesday, Nov 19 - Friday, Nov 22

Sign-up now and receive an early-bird discount!

Live Training Session

Python Network

Automation Training

Four Days

San Francisco

*See Syllabus Below

This course is limited to nine total students on a first come, first served basis. The course also requires a minimum of at least four students (see FAQ below).

"I want to take a moment to thank you for all of your work on network automation, I work in an environment of nearly 3000 network devices...with a few months practice, I have been able to make changes as simple as adding VLANs to rectifying things like telnet on devices, hitting thousands of devices at a time."

"I just wanted to say a massive thank you for your courses and other content you put out. I've done three of them now and have found them to be immensely valuable. They have changed the way I work and even the way I think."

Course Syllabus

Day1

  • Course introduction
  • vi (crash) introduction
  • Working with Git
  • Why Python?
  • Python Fundamentals
  • Fundamentals: Strings, Files, Lists, Dictionaries
  • Fundamentals: Conditionals and Loops
  • Fundamentals: Exceptions

Day2

  • Python Fundamentals: Regular Expressions
  • Python Reusable Blocks: Functions
  • Netmiko (Part1)
  • Netmiko (Part2)
  • Python Reusable Blocks: Classes/Objects

Day3

  • Python Reusable Blocks: Modules/Packages (optional)
  • sys.path and PYTHONPATH
  • Libraries/PIP/Virtualenv/Linting
  • TextFSM / Genie (optional)
  • Serialization Protocols: YAML and JSON
  • Pdb and the Python debugger
  • Handling Complex Data Structures
  • Cisco Nexus NX-API
  • Requests and using a REST-API (NetBox**)

Day4

  • Integrating to the operating system with subprocess (optional)
  • Pulling data from a CSV file
  • Integrating to Excel (optional)
  • Jinja2 Templating
  • Interfacing to the Slack-API
  • NAPALM
  • Concurrency: Threads and Processes
  • Intro to Unit Testing and CI/CD

*Subject to change (although changes should be minor). Additionally, the content might shift/move between days.

**NetBox is used for the REST API examples, but the content is fundamentally about REST APIs and not NetBox.

FAQ

What is the format of the course?

This is a four-day, in-person training session in downtown San Francisco. The training will be run out of a WeWork coworking space. The location will be within a few blocks of the Montgomery Street BART station. The course will run from Tuesday through Friday allowing individuals to travel on Monday. The daily training sessions will run from 9AM to roughly 4:45PM. On Friday, we will end by 4PM.

Is there a lab environment?

Yes, the lab environment will consist of a set of virtual and physical network devices and at least one AWS-Linux server. We will install a set of Python libraries in the lab environment that will enable you to start working quickly. The lab environment will have a mixture of vendors and platforms (Cisco IOS/IOS-XE, Cisco NX-OS, Juniper, and Arista).

What are the prerequisites for the course?

You should be familiar with the basics of Python. You can be slow at writing Python code, but these ideas should not be new to you. After signing-up, We will send more details on this so that you can better prepare yourself for the start of the training session.

You also need to be familiar with basic network engineering (routing, switching, Cisco CLI configuration).

Finally, since the lab environment will use Linux, you should be at least somewhat familiar with Linux. You should know the basics of how to move around the file system, execute a script, and edit a file (we will very briefly cover the basics of "vi" in the course).

Why Python?

Python facilitates writing clean, readable code and is natively present on Linux and MacOS. Python has gained widespread support in the networking community both from engineers and from vendors. Python has a large, active community and, consequently, numerous resources are available to you (libraries, documentation, books, tutorials, etc.).

What is the course's cancellation policy?

If you cancel at least seven days prior to the start of the training session, then you will receive a 100% refund. If you cancel at least 24-hours prior to the start of the training session, then you will receive a 50% refund; the remaining 50% will be non-refundable. All amounts will be non-refundable once you are within 24-hours of the training session start.

What is the minimum student policy?

The course requires a minimum of four students. If we don't have a minimum of four students, then we reserve the right to cancel the course and refund your money. If an in-person training session is cancelled, we will notify you at least seven days prior to the start of the training session.

Kirk Byers Image

About Us:

Kirk Byers.

Kirk Byers is the founder of Twin Bridges Technology–a small business specializing in network automation training. He is the creator of the Netmiko Python library and also one of the core maintainers of the NAPALM project.

He teaches Python, Ansible, and Nornir courses for Network Engineers and writes about network automation at pynet.twb-tech.com. He is a long-time network engineer (CCIE #6243 emeritus), has extensive experience with *nix system administration, and is a Python programmer. He is interested in programming and networking and how to improve network engineering practices through automation.



Carl Montanari

Carl is a dual-CCIE (#37652 R/S and SP) and has been in the networking field since his very first job in the United States Air Force. Over the last few years, he has been diving further and further into automation: starting out with simple Python scripts, but quickly moving on to take advantage of Netmiko, NAPALM, python-Requests and tons more.

Over the past few years, he has been teaching fellow network engineers how to automate and how to integrate automation into CI/CD pipelines. Lately, he has loved exploring Nornir and getting himself more involved in contributing to these great open-source projects.



Luca

Luca enjoys smugly knocking things over, cuddling right before you need to get up, and sometimes playing fetch. He is really looking forward to the next release of NAPALM.

Python Network Automation Course

In-Person Training Session

San Francisco, Four days

Tuesday, Nov 19 - Friday, Nov 22

Sign-up now and receive an early-bird discount!

Live Training Session

Python Network

Automation Training

Four Days

San Francisco

This course is limited to nine total students on a first come, first served basis.