Python for Network Automation

The libraries that drive real fleets: Netmiko, NAPALM, Ansible and REST APIs, with the safety practices that stop automation causing outages.

Enroll Now
Section
Automation
Trained
3,000+

Course overview

Python for Network Automation is a advanced-level course from Tungabadra Networks. It covers 9 modules, is delivered classroom, online (live), corporate (on-site), and includes 3 applied projects. It is applied rather than exam-aligned.

Python for Network Automation is the applied automation course. It covers the libraries engineers actually use against production devices: Netmiko for SSH, NAPALM for vendor abstraction, Ansible for declarative configuration, and REST APIs for modern platforms.

Safety is the throughline. Every technique is paired with the practice that makes it safe to run against real equipment: dry runs, pre- and post-change validation, idempotency and rollback.

The output is tooling you could run against a fleet, not scripts that only work in a lab.

Who this course is for

  • Network engineers automating repetitive work
  • Engineers who have completed DevNet or equivalent Python basics
  • NOC staff automating recurring checks
  • Engineers modernising a manual change process

What you will be able to do

By the end of Python for Network Automation, you will be able to:

  • Collect and parse device state across a fleet programmatically
  • Generate device configuration from templates and a source of truth
  • Push changes safely with dry runs and pre and post checks
  • Use Ansible for declarative, idempotent network configuration
  • Write automated tests that catch regressions before users do
  • Build tooling a colleague can run without you

Skills covered

  • Netmiko
  • NAPALM
  • Ansible
  • Jinja2 templating
  • REST APIs
  • YAML data models
  • Error handling
  • Idempotency
  • Automated validation
  • Change safety

Curriculum

9 modules of instruction and lab work.

Core Python & Getting Started

4 topics
  • Python in networking
  • Install and first program
  • Syntax and keywords
  • Operators

Variables & Data Types

4 topics
  • Variables
  • Data types
  • Type casting
  • Strings and booleans

Data Structures

4 topics
  • Lists
  • Tuples
  • Sets
  • Dictionaries

Control Statements

4 topics
  • if, elif and else
  • for loops
  • while loops
  • continue, break and pass

Functions

4 topics
  • Defining functions
  • Built-in functions
  • Positional and keyword arguments
  • Lambda and recursion

Object-Oriented Programming

4 topics
  • Classes and objects
  • Constructors
  • Inheritance
  • Abstraction, encapsulation, overloading and overriding

Exception Handling

3 topics
  • try, except and finally
  • Custom exceptions
  • Raising exceptions

Network Automation with Python

4 topics
  • Paramiko SSH
  • Netmiko across vendors
  • NETCONF, YANG and REST
  • Automation lab

Advanced Automation & Projects

4 topics
  • Ansible
  • Configuration management at scale
  • Monitoring and analytics
  • Lab: building custom tools

Projects you will complete

Fleet compliance audit

Collect configuration from every device in the lab fleet, check it against a written standard, and produce an exception report.

Templated site rollout

Generate and deploy a full branch configuration from a data file, with validation before and after.

Automated test suite

Write tests that verify reachability, adjacencies and policy, and run them after every change.

Prerequisites

  • Working knowledge of routing and switching
  • Basic Python, or Cisco DevNet / Network Automation first
  • Comfortable on the Linux command line

Certification

Course completion certificate

Issued on completion. The certificate lists the modules completed and the skills applied. No third-party exam. The course is applied rather than exam-aligned.

Career opportunities

Roles this course is designed to prepare you for in the US job market:

Network Automation Engineer

Owns the automation that configures and validates the estate.

NetDevOps Engineer

Brings CI and testing practice to network change.

Senior Network Engineer

Leads modernisation of network operations.

Tools Engineer

Builds internal tooling for infrastructure teams.

Job titles vary by employer. Tungabadra Networks does not guarantee employment and publishes no placement or salary statistics.

Frequently asked questions

How much Python do I need first?

Enough to write a function, loop over a list and handle an exception. Cisco DevNet / Network Automation covers more than enough, and week one includes a refresher.

Will this work on my employer's equipment?

The techniques apply to anything reachable over SSH or an API, which covers most Cisco, Juniper and Arista platforms. Labs run on the training fleet so you never test on production.

Ansible or Python: which should I use?

Both, for different jobs. The course covers when declarative Ansible is right and when you need the control of a script.

Questions about Python for Network Automation?

Tell us your background and we will confirm whether this course is the right level, or point you to a better starting point.