CCNA Automation Bootcamp
Formerly DevNet Associate
The new name for Cisco DevNet Associate. Learn to write software that configures, monitors and secures networks, using Python, REST APIs, Ansible and Cisco platform APIs.
- Duration
- 10 weeks
- Format
- Live online + self-study
- First class
- Free, no obligation
- Level
- Networking basics helpful
- Schedule
- Evenings, US time zones
- Lectures
- 20 (notes · lab · quiz)
- Exam
- Cisco 200-901
- Exam details
- 120 min · $300 USD (paid to Cisco)
- Tuition
- $300 per student, batch of 3 to 5 · payment plans
What you'll master.
Software Development and Design
- XML, JSON & YAML parsing in Python
- Git operations: branch, merge, diff
- Test-driven development & design patterns (MVC, Observer)
Understanding and Using APIs
- Construct REST API requests from docs
- HTTP response codes, webhooks & API auth
- Python requests library
Cisco Platforms and Development
- Meraki, Catalyst Center, ACI, SD-WAN & NSO APIs
- Webex, Intersight & security platform APIs
- YANG, RESTCONF & NETCONF in Cisco environments
Application Deployment and Security
- Docker, CI/CD & Python unit tests
- Edge, cloud & hybrid deployment models
- OWASP threats, secrets & Bash
Infrastructure and Automation
- Infrastructure as code: Ansible, Terraform, NSO
- Cisco Modeling Labs & pyATS
- Interpret playbooks, YANG models & unified diffs
Network Fundamentals
- MAC, VLANs, IP, routes & gateways
- DHCP, DNS, NAT, SNMP, NTP & common ports
- Diagnose application connectivity issues
The complete 20-lecture path.
Every lecture includes a live class, self-study notes, an exam-style CLI lab and a 10-question Cisco-style quiz.
01What Is Network Automation?
- Manual vs. automated network changes
- Programmability, APIs and controllers, in plain language
- The automation toolbox: Linux, Python, Git, APIs, Ansible
- Your first steps in a Linux terminal
LAB Guided tour: your first Linux terminal
02The Linux Command Line & Bash
- Navigating the Linux file system [4.11]
- File management, pipes and redirection [4.11]
- Environment variables [4.11]
- Reading and running Bash scripts [5.9]
LAB Build a network-automation workspace in Bash
03Network Fundamentals for Automation I
- MAC addresses and VLANs [6.1]
- IP addresses, subnet masks, routes and gateways [6.2]
- Switches, routers, firewalls and load balancers [6.3]
- Reading topology diagrams [6.4]
LAB Map an application path through a topology
04Network Fundamentals for Automation II
- Management, data and control planes [6.5]
- DHCP, DNS, NAT, SNMP and NTP [6.6]
- Common ports: SSH, HTTPS, NETCONF [6.7]
- Diagnosing app connectivity and network constraints [6.8-6.9]
LAB Diagnose why an app cannot reach its API
05Python Essentials
- Variables, data types, lists and dictionaries
- Conditionals and loops
- Running scripts and the Python interpreter
- Virtual environments and pip
LAB Parse a device inventory with Python
06Functions, Classes, Modules & Design Patterns
- Functions, classes and modules [1.5]
- Organizing code for reuse [1.5]
- MVC pattern [1.6]
- Observer pattern [1.6]
LAB Refactor a script into modules
07Data Formats: JSON, XML & YAML
- Comparing JSON, XML and YAML [1.1]
- Parsing into Python data structures [1.2]
- Navigating nested data
- Converting between formats
LAB Extract data from JSON, XML and YAML
08Git & Version Control
- Why version control [1.7]
- Clone, add, commit, push and pull [1.8.a-d]
- Branches, merges and conflicts [1.8.e-f]
- Reading git diff [1.8.g]
LAB Branch, merge and resolve a conflict
09Software Development Methods & Testing
- Agile, lean and waterfall [1.4]
- Test-driven development [1.3]
- Writing Python unit tests [4.5]
- Making code testable
LAB Write tests first, then the function
10HTTP & REST API Fundamentals
- HTTP methods and REST constraints [2.3]
- Response codes [2.4]
- Response headers and body [2.6]
- REST vs. RPC, sync vs. async [2.8]
LAB Read and interpret raw HTTP exchanges
11Consuming APIs with Python
- Building requests from API docs [2.1]
- Basic, token and API-key auth [2.7]
- The requests library [2.9]
- Troubleshooting from status codes [2.5]
LAB Call an inventory API with requests
12Webhooks, API Constraints & Workflows
- Webhook usage patterns [2.2]
- Rate limits and pagination [2.3]
- Sequence diagrams with API calls [5.14]
- Error handling and retries
LAB Design a webhook-driven workflow
13Model-Driven Programmability: YANG, NETCONF & RESTCONF
- Value of model-driven programmability [5.1]
- YANG models [5.11]
- NETCONF and RESTCONF [3.8]
- Interpreting query results [5.10]
LAB Query and interpret RESTCONF output
14Cisco Network Platforms & APIs
- Catalyst Center, Meraki, ACI, SD-WAN and NSO [3.2]
- Listing devices and clients via APIs [3.9.a, 3.9.c]
- Controller vs. device-level management [5.2]
- Identifying automated workflows in scripts [5.7]
LAB Pull device and client lists from a controller API
15Collaboration, Compute & Security Platforms, SDKs & DevNet
- Webex APIs: spaces, people, messages [3.4, 3.9.b]
- UCS Manager, Intersight and security platforms [3.3, 3.5]
- IOS XE and NX-OS device APIs [3.6]
- Cisco SDKs and DevNet resources [3.1, 3.7]
LAB Automate Webex spaces and messages
16Application Deployment Models & Containers
- Edge computing benefits [4.1]
- Private, public, hybrid and edge deployment [4.2]
- VMs, bare metal and containers [4.3]
- Dockerfiles and local Docker images [4.6-4.7]
LAB Read a Dockerfile and run a container
17CI/CD, DevOps & Code Review
- CI/CD pipeline components [4.4, 5.4]
- DevOps principles [4.12]
- Interpreting unified diffs [5.12]
- Code review process [5.13]
LAB Trace a change through a CI/CD pipeline
18Application Security
- Secrets, encryption and data handling [4.8]
- Firewalls, DNS, load balancers and reverse proxies [4.9]
- OWASP threats: XSS, SQL injection, CSRF [4.10]
- Secure coding habits
LAB Find and fix insecure code
19Infrastructure as Code: Ansible, Terraform & NSO
- Infrastructure as code principles [5.5]
- Ansible, Terraform and NSO capabilities [5.6]
- Interpreting Ansible playbooks [5.8]
- Interpreting Bash automation scripts [5.9]
LAB Read and fix an Ansible playbook
20Network Simulation, Testing & Final Review
- Cisco Modeling Labs and pyATS [5.3]
- Testing changes before production
- Full-domain review
- Full-length practice exam
LAB Capstone: automate, test and verify a change
By the end you will
- Write Python scripts that talk to network devices and controllers
- Consume and troubleshoot REST APIs confidently
- Build CI/CD-style workflows for network changes
- Use NETCONF/RESTCONF and YANG models
Roles this prepares you for
Includes resume review, LinkedIn optimization and mock interviews focused on the US job market.
Ready to start CCNA Automation?
Book a free consultation. We will confirm the next start date in your time zone and walk you through tuition and payment plans.